Ich habe begonnen, eine Intranet-Website mit ASP.NET Web Forms zu entwickeln (ich bin ein Anfänger), die Windows-Authentifizierung verwendet, um Benutzer zu identifizieren, aber den Zugriff auf verschiedene Seiten zu kontrollieren Ich versuche, Benutzern Rollen basierend auf festgelegten Kriterien basierend auf Daten in SQL-Tabellen zuzuordnen (diese Daten können sich täglich ändern).Windows-Authentifizierung - Rollen mit benutzerdefinierten Kriterien festlegen
Bis jetzt habe ich die "out of the box" ASP.NET Web Forms Vorlage mit Windows-Authentifizierung, die eine funktionierende Verbindung zu meiner (remote) SQL Server-Datenbank hat.
Ich entschuldige mich, wenn dies an anderer Stelle beantwortet wurde, aber ich kann nicht scheinen, eine Lösung zu finden, die meinen Bedürfnissen entspricht.
Mit einigen grundlegenden IF-Logik, werde ich die folgenden Rollen haben: 'Admin', 'Moderator', 'HRA', 'Manager' und 'Mitarbeiter'.
oben schauen die protokollierten-in-Daten des Benutzers aus einer SQL-Tabelle (3-4 Felder max) festgelegten Kriterien wird die Rolle des Benutzers wie folgt ermitteln:
if (UserRole === null) Then
If (ORG_ID === 30001000) Then
UserRole === 'Admin'
else if (ORG_ID === 30001001) Then
UserRole === 'Moderator'
else if (ORG_ID === 30001002) Then
UserRole === 'HRA'
else if (CHIEF === 'Chief') Then
UserRole === 'Manager'
else
UserRole === 'Employee'
End If
End if
Ich vermute, dass dies gearbeitet werden würde in die Site.Master-Datei, die einmal pro Sitzung ausgeführt wird, aber ich bin fest, wie dies würde genau funktionieren und wenn etwas zur Konfigurationsdatei usw. hinzugefügt werden muss
Dank im Voraus, ich verstehe, wie dies funktionieren würde mit PHP aber ASP.NET und wie es funktioniert ist für mich völlig neu. Wenn es eine bessere Lösung gibt, dann großartig!
Es ist auch erwähnenswert, dass einige Teile meiner Website (z. B. ein Dashboards-Abschnitt) einige UserRoles benutzerdefinierten Zugriff auf Dashboards von einer SQL-Tabelle gesteuert steuern lassen - aber ich kann in Zukunft schauen.