Statikus webalkalmazások hitelesítése és engedélyezése

Figyelmeztetés

Az X (korábbi nevén Twitter) API-szabályzat változásai miatt nem tudjuk továbbra is támogatni azt az alkalmazás előre konfigurált szolgáltatóinak részeként. Ha továbbra is az X (korábbi nevén Twitter) szolgáltatást szeretné használni az alkalmazással való hitelesítéshez/engedélyezéshez, frissítse az alkalmazás konfigurációját egy egyéni szolgáltató regisztrálásához.

Az Azure Static Web Apps leegyszerűsített hitelesítési élményt nyújt, ahol nincs szükség más műveletekre vagy konfigurációkra a GitHub és a Microsoft Entra ID hitelesítéshez való használatához.

Ebben a cikkben megismerheti az alapértelmezett viselkedést, a bejelentkezés és a kijelentkezés beállítását, a hitelesítési szolgáltató letiltásának módját és egyebeket.

Regisztrálhat egy egyéni szolgáltatót, amely letiltja az összes előre konfigurált szolgáltatót.

Előfeltételek

Vegye figyelembe a következő alapértelmezett beállításokat és erőforrásokat az Azure Static Web Apps használatával történő hitelesítéshez és engedélyezéshez.

Alapértelmezett:

  • Bármely felhasználó hitelesíthet egy előre konfigurált szolgáltatóval
  • A bejelentkezés után a felhasználók a anonymous szerepkörökhöz tartoznak authenticated . A szerepkörökről további információt a Szerepkörök kezelése című témakörben talál .

Erőforrások:

Bejelentkezés beállítása

Az Azure Static Web Apps a /.auth rendszermappával biztosít hozzáférést az engedélyezéshez kapcsolódó API-khoz. Ahelyett, hogy közvetlenül a végfelhasználók számára tenné elérhetővé a /.auth mappa alatti útvonalakat, hozzon létre útválasztási szabályokat a barátságos URL-címekhez.

A szolgáltatóspecifikus útvonal megkereséséhez használja az alábbi táblázatot.

Engedélyezési szolgáltató Bejelentkezési útvonal
Microsoft Entra ID /.auth/login/aad
GitHub /.auth/login/github

Ha például a GitHubbal szeretne bejelentkezni, az alábbi hivatkozáshoz hasonlót is megadhat.

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

Ha egynél több szolgáltatót támogat, tegyen közzé egy szolgáltatóspecifikus hivatkozást a webhelyén. Útvonalszabály használatával képezhet le egy alapértelmezett szolgáltatót egy olyan felhasználóbarát útvonalra, mint a /login.

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

Bejelentkezés utáni átirányítás beállítása

Adja vissza a felhasználót egy adott lapra a bejelentkezés után egy teljes url-cím megadásával a post_login_redirect_uri lekérdezési sztring paraméterben, például az alábbi példában.

<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 configure this behavior, 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
    }
  }
}

Kijelentkezés beállítása

Az /.auth/logout útvonal kijelentkezteti a felhasználókat a webhelyről. Hozzáadhat egy hivatkozást a webhely navigációjához, hogy lehetővé tegye a felhasználónak a kijelentkezéseket, például az alábbi példában.

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

Útvonalszabály használatával képezhet le egy olyan felhasználóbarát útvonalat, mint a /logout.

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

Kijelentkezés utáni átirányítás beállítása

Ha ki szeretne adni egy felhasználót egy adott lapra a kijelentkezés után, adjon meg egy URL-címet a lekérdezési sztring paraméterben post_logout_redirect_uri .

Hitelesítési szolgáltató letiltása

Érdemes lehet korlátozni, hogy az alkalmazás hitelesítésszolgáltatót használjon, mivel az összes hitelesítésszolgáltató engedélyezve van. Előfordulhat például, hogy az alkalmazás csak az e-mail-címeket közzétesző szolgáltatókat szeretné szabványosítani.

A szolgáltató letiltásához létrehozhat útvonalszabályokat , amelyek egy 404-es állapotkódot adnak vissza a letiltott szolgáltatóspecifikus útvonalra irányuló kérésekhez. A Twitter szolgáltatóként való korlátozásához például adja hozzá a következő útvonalszabályt.

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

Személyes adatok eltávolítása

Amikor végfelhasználóként ad hozzájárulást egy alkalmazáshoz, az alkalmazás az identitásszolgáltatótól függően hozzáfér az Ön e-mail-címéhez vagy felhasználónevéhez. Miután megadta ezeket az információkat, az alkalmazás tulajdonosa eldöntheti, hogyan kezelje a személyes adatokat.

A végfelhasználóknak fel kell venniük a kapcsolatot az egyes webalkalmazások rendszergazdáival, hogy visszavonhassák ezeket az információkat a rendszereikből.

Ha el szeretné távolítani a személyes adatokat az Azure Static Web Apps platformról, és meg szeretné akadályozni, hogy a platform ezeket az információkat a jövőbeli kérelmekről adja meg, küldjön egy kérést a következő URL-címmel:

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.

Következő lépés