ASP.NET QuickStart Príručka
Windows autentizácia
Keď používate Windows autentizáciu ASP.NET, ASP.NET pripája objekt WindowsPrincipal ku aktuálnej požiadavke. Objekt sa používa pri URL autorizácii. Aplikácia ho môže použiť aj na identifikáciu, či identita patrí do zvolenej roly.
If User.IsInRole("Administrators") Then
DisplayPrivilegedContent()
End If
VB
Trieda WindowsPrincipal rozlišuje roly na základe príslušnosti ku skupine NT. Aplikácie, ktoré chcú rozlíšiť vlastné roly, musia
reagovať na udalosť WindowsAuthentication_OnAuthenticate v súbore Global.asax a a pripojiť vlastnú triedu implementujúcu rozhranie System.Security.Principal.IPrincipal k požiadavke
tak, ako je ukázané v nasledujúcom príklade:
' Create a class that implements IPrincipal
Public Class MyPrincipal : Inherits IPrincipal
' Implement application-defined role mappings
End Class
' In a Global.asax file
Public Sub WindowsAuthentication_OnAuthenticate(Source As Object, e As WindowsAuthenticationEventArgs)
' Attach a new application-defined class that implements IPrincipal to
' the request.
' Note that since IIS has already performed authentication, the provided
' identity is used.
e.User = New MyPrincipal(e.Identity)
End Sub
VB
Ďalší príklad ukazuje ako pristúpiť ku menu autentifikovaného používateľa, ktoré je dostupné cez vlastnosť User.Identity.Name. Programátori zvyknutí na ASP nájdu uvedenú hodnotu aj v premennej servera AUTH_USER. Predtým, ako spustíte aplikáciu, uistite sa, že nastavenia na IIS vyžadujú len integrovanú Windows autentifikáciu pre ukážkovú aplikáciu. Nastavenie vynúti bezpečnostný handshake (potrasenie rúk - výmenu bezpečnostných informácií) medzi prehliadačom a ukážkovou aplikáciou.
VB Windows Authentication
|