2017-05-11 5 views
0

Ich habe eine Azure Active Directory-Anwendung erstellt und möchte rollenbasierte Sicherheit verwenden. Ich folgte dem Tutorial auf: https://azure.microsoft.com/en-us/resources/samples/active-directory-dotnet-webapp-openidconnect-aspnetcore/ASP Core Azure Active Directory Anmeldung Rollen verwenden

Die Anmeldung funktioniert, ich Rollen zum Anwendungsmanifest hinzugefügt und die Rolle Approver zu meinem eigenen Konto zugewiesen. Jetzt möchte ich diese Rollen benutzen.

Nach der Anmeldung den folgenden Arbeiten in der Steuerung:

[Authorize] 

Aber beim Hinzufügen der Rolle der Benutzer nicht autorisiert:

[Authorize(Roles="Approver")] 

Auch gibt folgende Formel false:

User.IsInRole("Approver"); 

Es scheint, dass die Rollen nicht zurückgezogen werden, irgendwelche Vorschläge, wie man die Rollenfunktionalität zu dieser Demo hinzufügt Projekt?

Antwort

1

Dieses Codebeispiel funktioniert für mich nach dem Zuweisen von Rollen zu Konto. Bitte Debug-Anwendung in dieser Zeile: User.IsInRole ("Genehmiger"); Überprüfen Sie, ob {http://schemas.microsoft.com/ws/2008/06/identity/claims/role: Approver} in Benutzeransprüchen vorhanden ist. Und stellen Sie sicher, dass Sie Rollen hinzufügen, die allowedMemberTypes Benutzer ist, zum Beispiel:

{ 
     "allowedMemberTypes": [ 
     "User" 
     ], 
     "displayName": "Approver", 
     "id": "fc803414-3c61-4ebc-a5e5-cd1675c14bbb", 
     "isEnabled": true, 
     "description": "Approvers have the ability to change the status of tasks.", 
     "value": "Approver" 
    }, 

Und Sie haben die Benutzerrolle zuweisen in Enterprise applications ->All applications -> finden Ihre Anwendung ->Users and groups -> Hinzufügen/Bearbeiten ein Benutzer und weisen Rollen zu: enter image description here

Verwandte Themen