Autorizácia užívateľov Intranetu pomocou NT prihla

Autorizácia užívateľov Intranetu pomocou NT prihlasovacieho mena a hesla sa skladá z viacerých krokov ...

1. zistenie dát od používateľa (prihlasovacie meno, prip. doména a heslo) nastavenie Session premenných.
Túto časť kódu umiestníme na úvodnú stránku celého webu. Stačí nám totiž raz zistiť užívateľa a uložiť premennú do Session. Táto premenná je potom aktívna celú dobu prístupu užívateľa. Tým sa zabezpečí, že dáta o konkrétnom užívateľovi budú prístupné po celú dobu práce užívateľa s Intranetom. Môj príklad obsahuje aj vypísanie zistených informácií.

Kód asp stránky zisťujúcej dáta od používateľa (aj ho vypíše):

--------------------------------------------------------------------------

<%@ Language=VBScript %>
<%Response.Expires = 0%>
<%
'Create User and Domain
Dim MyString, MyArray
'Set up User and Domain
MyString = CStr(Request.ServerVariables("LOGON_USER"))
If InStr(MyString,"\\") = 0 Then
Session("Domain") = "uknown"
Session("User_Login") = MyString
Else
MyArray = Split(MyString, "\\", -1, 1)
Session("Domain") = MyArray(0)
Session("User_Login") = MyArray(1)
End If
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
Domain : <%=Session("User_Domain")%>
User : <%=Session("User_Login")%>
</BODY>
</HTML>

--------------------------------------------------------------------------

2. autorizovanie užívateľa (nepovinné).
V tejto časti zistíme data o používateľovi v databáze a uložíme si ich do Session objektu. Ide napríklad o dáta do ktorej skupiny užívateľov nám daný konkrétny užívateľ patrí. Nebudem sa tu viac zaoberať týmto bodom nakoľko je to predmetom inej diskusie. Avšak viac o databázach /a verim, že to pomôže/ nájdete tu. Predpokladajme, že výsledkom tohoto kroku je nastavenie Session ("User_Group") = "Admin".

3. povolenie pristupu na stránku.
Najdôležitejšia časť. Je umiestnená na každej stránke. Ide o preverenie či daný užívateľ má právo vidieť túto stránku.

--------------------------------------------------------------------------

<%@ Language=VBScript %>
<%Response.Expires = 0%>
<%
If Session("User_Group") <> "Admin" Then
Response.Redirect ("nemal_pravo.htm")
End If
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
naša stránka s povolovacím prístupom ...
</BODY>
</HTML>

--------------------------------------------------------------------------

Pre zjednodušenie a skrátenie písania kódu sme si vytvorili stránku zobrazujúcu, že užívateľ nemal právo vidieť danú stránku. Na túto stránku užívatela premiestňujeme príkazom Response.Redirect ("nemal_pravo.htm")

Stránka nemal_pravo.htm :

--------------------------------------------------------------------------

<HTML>
<HEAD>
</HEAD>
<BODY>
Nemáte právo vidieť túto stránku.
</BODY>
</HTML>

-------------------------------------------------------------------------

A to je celé. Výhodou tohoto prístupu je, že ak používateľ používa IE bod 1. prebehne automaticky. Ak však používa NN nič nie je stratené. Iba na výzvu napíše svoje prihlasovacie meno a heslo do NT domény. Veľa zdaru pri skúšaní ....

Developer,
Stiahnuté z Developer.sk