Bewerken

Delen via


Static Web Apps verifiëren en autoriseren

Azure Static Web Apps biedt een gestroomlijnde verificatie-ervaring, waarbij er geen extra configuratie is vereist voor het gebruik van GitHub en Microsoft Entra ID voor verificatie. Alle functies die in dit artikel worden vermeld, zijn beschikbaar in alle Static Web Apps-abonnementen.

In dit artikel vindt u meer informatie over het standaardgedrag, het instellen van aanmelding en afmelden, het blokkeren van een verificatieprovider en meer. Als u de verificatiedetails voor een specifiek gebruik wilt lezen, raadpleegt u Gebruikersgegevens van Access.

U kunt een aangepaste provider registreren, waardoor alle vooraf geconfigureerde providers worden uitgeschakeld.

Waarschuwing

Vanwege wijzigingen in X-API-beleid (voorheen Twitter) is ondersteuning niet beschikbaar als onderdeel van de vooraf geconfigureerde providers voor uw app. Als u X (voorheen Twitter) wilt blijven gebruiken voor verificatie/autorisatie bij uw app, werkt u uw app-configuratie bij om een aangepaste provider te registreren.

Vereisten

Houd rekening met de volgende standaardwaarden en resources voor verificatie en autorisatie met Azure Static Web Apps.

Standaardinstellingen:

  • Elke gebruiker kan verifiëren met een vooraf geconfigureerde provider
    • GitHub
    • Microsoft Entra ID
    • Als u een verificatieprovider wilt beperken, blokkeert u de toegang met een aangepaste routeregel
  • Na aanmelding horen gebruikers bij de anonymous en authenticated rollen. Zie Rollen beheren voor meer informatie over rollen

Resources:

Aanmelden instellen

Azure Static Web Apps maakt gebruik van de /.auth systeemmap om toegang te bieden tot autorisatiegerelateerde API's. In plaats van een van de routes onder de /.auth map rechtstreeks beschikbaar te maken voor eindgebruikers, maakt u routeringsregels voor beschrijvende URL's.

Gebruik de volgende tabel om de providerspecifieke route te vinden.

Autorisatieprovider Aanmeldingsroute
Microsoft Entra ID /.auth/login/aad
GitHub /.auth/login/github

Als u zich bijvoorbeeld wilt aanmelden met GitHub, kunt u een URL gebruiken die vergelijkbaar is met het volgende voorbeeld.

<a href="/.auth/login/github">Login</a>

Als u ervoor kiest om meer dan één provider te ondersteunen, gebruikt u een providerspecifieke koppeling voor elke provider op uw website. Gebruik een routeregel om een standaardprovider toe te wijzen aan een beschrijvende route, zoals /login.

{
  "route": "/login",
  "redirect": "/.auth/login/github"
}

Omleiding na aanmelding instellen

U kunt een gebruiker terugsturen naar een specifieke pagina nadat deze zich heeft aangemeld door een volledig gekwalificeerde URL op te geven in de post_login_redirect_uri querytekenreeksparameter.

<a href="/.auth/login/github?post_login_redirect_uri=https://zealous-water.azurestaticapps.net/success">Login</a>

You can also redirect unauthenticated users back to the referring page after they sign in. To add this redirect, create a response override rule that sets post_login_redirect_uri to .referrer, like in the following example.

{
  "responseOverrides": {
    "401": {
      "redirect": "/.auth/login/github?post_login_redirect_uri=.referrer",
      "statusCode": 302
    }
  }
}

Afmelden instellen

De /.auth/logout route ondertekent gebruikers van de website. U kunt een koppeling toevoegen aan uw sitenavigatie zodat de gebruiker zich kan afmelden, zoals in het volgende voorbeeld.

<a href="/.auth/logout">Log out</a>

Gebruik een routeregel om een beschrijvende route, zoals /logout, toe te wijzen.

{
  "route": "/logout",
  "redirect": "/.auth/logout"
}

Omleiding na afmelden instellen

Als u een gebruiker wilt retourneren naar een specifieke pagina nadat deze zich heeft afgemeld, geeft u een URL op in post_logout_redirect_uri de querytekenreeksparameter.

Een verificatieprovider blokkeren

Standaard zijn alle verificatieproviders ingeschakeld, maar u kunt uw app beperken tot het gebruik van een provider. Uw app wil bijvoorbeeld alleen providers gebruiken die e-mailadressen beschikbaar maken.

Als u een provider wilt blokkeren, maakt u een routeregel om een 404 statuscode te retourneren voor aanvragen naar de geblokkeerde providerspecifieke route. Als u bijvoorbeeld de Entra-id (voorheen Azure Active Directory, ook wel 'aad'-provider genoemd) wilt beperken, voegt u de volgende routeregel toe.

{
  "route": "/.auth/login/aad",
  "statusCode": 404
}

Persoonlijke gegevens verwijderen

Wanneer u toestemming verleent aan een toepassing als eindgebruiker, heeft de toepassing toegang tot uw e-mailadres of gebruikersnaam, afhankelijk van de id-provider. Zodra deze informatie is verstrekt, kan de eigenaar van de toepassing bepalen hoe persoonlijke gegevens moeten worden beheerd.

Eindgebruikers moeten contact opnemen met beheerders van afzonderlijke web-apps om deze informatie van hun systemen in te trekken.

Als u persoonlijke gegevens wilt verwijderen uit het Azure Static Web Apps-platform en wilt voorkomen dat het platform deze informatie op toekomstige aanvragen verstrekt, dient u een aanvraag in met behulp van de volgende URL:

https://identity.azurestaticapps.net/.auth/purge/<AUTHENTICATION_PROVIDER_NAME>

To prevent the platform from providing this information on future requests to individual apps, submit a request using the following URL:

https://<WEB_APP_DOMAIN_NAME>/.auth/purge/<AUTHENTICATION_PROVIDER_NAME>

If you're using Microsoft Entra ID, use aad as the value for the <AUTHENTICATION_PROVIDER_NAME> placeholder.

Tip

For information about general restrictions and limitations, see Quotas.

Volgende stap