Ich arbeite an einer Website, die die Formularauthentifizierung verwendet. Ich war daran interessiert, wie das Authentifizierungssystem funktionierte, da, wenn ich anfänglich irgendeine Seite in der Site öffne, es mich zu einem Login umleitet, und keiner der Controller/Aktionen eine Autorisierungslogik hat, die in ihnen platziert ist.ASP.NET MVC Forms-Authentifizierung - Wie funktioniert es und beharrt Authentifizierung?
- Über die unten stehende Konfiguration bestimmt MVC oder ASP.NET automatisch, ob Sie authentifiziert sind? (Wie ich bereits sagte, gibt es in den Controllern keinen Code zum "Umleiten" oder stellen Sie sicher, dass der Benutzer autorisiert ist.
- Wenn ASP.NET dies behandelt, in welchen Situationen müssen Sie Ihre Aktionen/Controller autorisieren ? (dh [autorisieren] Attribut)
- Wie funktioniert die Formularauthentifizierung Arbeit ich bin besonders daran interessiert, wie die "Zulassung" beibehalten wird (dh Cookies ??)
Webseiten web.config Technologie:? MVC 3, Entity Framework 4.1 (Code zuerst), ASP.NET 4
<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl="~/Account/Index" timeout="2880" />
</authentication>
<membership defaultProvider="CodeFirstMembershipProvider">
<providers>c
<clear />
<add name="CodeFirstMembershipProvider" type="Vanguard.AssetManager.Services.Security.MembershipService" applicationName="/" />
</providers>
</membership>
<roleManager enabled="true" defaultProvider="CodeFirstRoleProvider">
<providers>
<clear />
<add name="CodeFirstRoleProvider" type="Vanguard.AssetManager.Services.Security.RoleService" applicationName="/" />
<add applicationName="/" name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>
</system.web>
<location path="Admin">
<system.web>
<authorization>
<allow roles="Admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
<location path="Content/packages">
<system.web>
<authorization>
<allow roles="Admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
<location path="Home">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="CheckIn">
<system.web>
<authorization>
<allow roles="CheckIn, Admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
<location path="Assignment">
<system.web>
<authorization>
<allow roles="Assignment, Admin" />
<deny users="*" />
</authorization>
</system.web>
</location>
<configuration>
Die Website verwendet MVC-Bereiche, von denen ich annehme, worauf sich der Abschnitt bezieht.