none
Authentifizierung über Azure Active Directory (OAuth) -> Frage zu Berechtigung RRS feed

  • Frage

  • Hallo, 

    ich habe ein App-Service (ASP.NET) in Azure laufen, der Daten für mehrere Clients bereitstellt (davor sitzen keine User, sondern die Clients sollen einfach die Daten anzeigen). 

    Der Client meldet sich i.d.R. über Azure AD an (der/die Benutzernamen habe ich in meinem AAD Tenant angelegt) und ruft dann die GET-API des App Services auf, welcher die für den Benutzer freigeschalteten Daten zurück gibt (das läuft über https). 

    Das Projekt basiert auf folgendem Beispielcode: Github active-directory-dotnet-native-headless

    Der App-Service ist in Azure so eingestellt, dass der Benutzer zuvor der App hinzugefügt werden muss (User assignment required). 

    Normalerweise erfrage ich das Zugriffstoken über

    AuthentificationResult Token = _AuthentificationContext.AcquireTokenAsync(_RessourceID, _ClientID, credentials).Result;

    Wenn der AD-Benutzer aber neu ist, funktioniert das nicht und ich muss ihn über ein MS Anmeldefenster anmelden lassen, wo er der App die Berechtigungen auf sein AD-Konto geben muss.

    AuthentificationResult Token = await _AuthentificationContext.AcquireTokenAsync(_RessourceID, _ClientID, _RedirectUri, new PlatformParameters(PromptBehavior.Auto));

    Sobald dies erledigt ist, funktioniert die Anfrage des Tokens wie im ersten CodeListing.

    Das mit dem "Concent permissions" geht beim ersten Einrichten des Clients in Ordnung. 

    Jetzt habe ich aber die Frage, ob die Berechtigungen dann auf unbestimmte Zeit gültig sind oder ob diese irgendwann automatisch ablaufen, und der Benutzer dann wieder der App die Berechtigungen geben muss (also quasi ein Ablaufdatum hat so wie Access Token und Refresh Token) ? (letzteres wäre unschön).

    Vielen Dank im Voraus.

    Gruß Felix



    • Bearbeitet Karl-Felix Dienstag, 19. Dezember 2017 10:17
    Dienstag, 19. Dezember 2017 10:12

Alle Antworten

  • Hallo Felix,

    beide Token habe ein Ablaufdatum. Der Refresh Token läuft nach 90 Tagen ab. Man kann es aber so einstellen das der Token nie abläuft. Siehe hierzu in die Doku


    Gruß Thomas
    Sage nie, ich kann es nicht - sage nur, ich kann es noch nicht!
    Dev Apps von mir: Icon für UWP,  UI Strings
    Andere Dev Apps: UWP Community Toolkit Sample App

    Dienstag, 19. Dezember 2017 17:34
  • Hallo Thomas, 

    danke für deine Antwort.

    Das mit der Gültigkeitsdauer des Tokens ist mir schon klar. Mir ist nur nicht klar (bzw. war das eigentlich meine Frage :)), ob der Benutzer, nachdem er der App Zugriff auf seinen Account (s. Bild) gegeben hat, dies nach einer bestimmten Zeit wieder tun muss ? Im Azure AD steht dann bei dem Benutzer unter "Applicationen" die berechtigte Anwendung.

    Wahrscheinlich wird das dauerhaft drin sein, aber ich würde gerne wissen, ob das auch wirklich so ist, bevor ich das Projekt dann richtig produktiv einsetze.

    Vielen Dank im Voraus.

    Gruß Felix

     

    Mittwoch, 20. Dezember 2017 13:34
  • Die Berechtigung bleibt dauerhaft bis zum wiederrauf durch den Benutzer drin. Aber der Benutzer wird sich spätestens nach 90 Tagen wieder neu Anmelden müssen, sobald der Refresh Token abgelaufen ist.


    Gruß Thomas
    Sage nie, ich kann es nicht - sage nur, ich kann es noch nicht!
    Dev Apps von mir: Icon für UWP,  UI Strings
    Andere Dev Apps: UWP Community Toolkit Sample App

    Mittwoch, 20. Dezember 2017 14:05