Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Static Web Apps, kimlik doğrulaması için GitHub ve Microsoft Entra Id kullanmak için ek yapılandırma gerekmeyen, kolaylaştırılmış bir kimlik doğrulama deneyimi sağlar. Bu makalede listelenen tüm özellikler tüm Static Web Apps planlarında kullanılabilir.
Bu makalede varsayılan davranış, oturum açma ve oturum kapatmayı ayarlama, kimlik doğrulama sağlayıcısını engelleme ve daha fazlası hakkında bilgi edinin. Belirli bir kullanımın kimlik doğrulama ayrıntılarını okumak için bkz . Kullanıcı bilgilerine erişme.
Önceden yapılandırılmış tüm sağlayıcıları devre dışı bırakmak için özel bir sağlayıcı kaydedebilirsiniz.
Uyarı
X (eski adı Twitter) API ilkesindeki değişiklikler nedeniyle, uygulamanız için önceden yapılandırılmış sağlayıcıların bir parçası olarak destek sağlanmaz. Uygulamanızla kimlik doğrulaması/yetkilendirme için X (eski adı Twitter) özelliğini kullanmaya devam etmek istiyorsanız, özel bir sağlayıcı kaydedecek şekilde uygulama yapılandırmanızı güncelleştirin.
Önkoşullar
Azure Static Web Apps ile kimlik doğrulaması ve yetkilendirme için aşağıdaki varsayılanlar ve kaynaklara dikkat edin.
Varsayılan:
- Herhangi bir kullanıcı önceden yapılandırılmış bir sağlayıcıyla kimlik doğrulaması yapabilir
- GitHub
- Microsoft Entra Kimlik
- Bir kimlik doğrulama sağlayıcısını kısıtlamak için özel yol kuralıyla erişimi engelleyin
- Oturum açma sonrasında kullanıcılar ve
authenticatedrollerineanonymousaittir. Roller hakkında daha fazla bilgi için bkz. Rolleri yönetme
Kaynaklar:
- Yetkili kullanıcıların kısıtlı yollara erişim sağlaması için staticwebapp.config.json dosyasında kurallar tanımlayın
- Yerleşik davet sistemini kullanarak kullanıcılara özel roller atama
- Api işleviyle oturum açarken program aracılığıyla kullanıcılara özel roller atama
- Kimlik doğrulaması ve yetkilendirmenin, Uygulama yapılandırma kılavuzunda ayrıntılı olarak açıklanan yönlendirme kavramlarıyla önemli ölçüde çakıştığını anlama
- Özel bir Microsoft Entra ID sağlayıcısı yapılandırarak oturum açmayı belirli bir Microsoft Entra ID kiracısı ile kısıtlayın. Önceden yapılandırılmış Microsoft Entra ID sağlayıcısı, herhangi bir Microsoft hesabının oturum açmasına izin verir.
Oturum açmayı ayarlama
Azure Static Web Apps, yetkilendirmeyle /.auth ilgili API'lere erişim sağlamak için sistem klasörünü kullanır. Klasörün altındaki /.auth yollardan herhangi birini doğrudan son kullanıcılara göstermek yerine kolay URL'ler için yönlendirme kuralları oluşturun.
Sağlayıcıya özgü yolu bulmak için aşağıdaki tabloyu kullanın.
| Yetkilendirme sağlayıcısı | Oturum açma yolu |
|---|---|
| Microsoft Entra Kimlik | /.auth/login/aad |
| GitHub | /.auth/login/github |
Örneğin, GitHub ile oturum açmak için aşağıdaki örneğe benzer bir URL kullanabilirsiniz.
<a href="/.auth/login/github">Login</a>
Birden fazla sağlayıcıyı desteklemeyi seçtiyseniz, web sitenizdeki her sağlayıcı için sağlayıcıya özgü bir bağlantı kullanın. Varsayılan sağlayıcıyı /login gibi kolay bir yola eşlemek için bir yol kuralı kullanın.
{
"route": "/login",
"redirect": "/.auth/login/github"
}
Oturum açma sonrası yeniden yönlendirmeyi ayarlama
Sorgu dizesi parametresinde tam URL sağlayarak, bir kullanıcıyı oturum açtıktan sonra belirli bir sayfaya post_login_redirect_uri döndürebilirsiniz.
<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
}
}
}
Oturumu kapatmayı ayarlama
Yol, /.auth/logout kullanıcıların web sitesinden çıkışını imzalar. Aşağıdaki örnekte olduğu gibi, kullanıcının oturumu kapatmasına izin vermek için site gezintinize bir bağlantı ekleyebilirsiniz.
<a href="/.auth/logout">Log out</a>
/logout gibi kolay bir yolu eşlemek için bir yol kuralı kullanın.
{
"route": "/logout",
"redirect": "/.auth/logout"
}
Oturum kapatma sonrası yeniden yönlendirmeyi ayarlama
Oturumu kapatan bir kullanıcıyı belirli bir sayfaya döndürmek için sorgu dizesi parametresinde post_logout_redirect_uri bir URL sağlayın.
Kimlik doğrulama sağlayıcısını engelleme
Varsayılan olarak, tüm kimlik doğrulama sağlayıcıları etkindir, ancak uygulamanızın sağlayıcı kullanmasını kısıtlamak isteyebilirsiniz. Örneğin, uygulamanız yalnızca e-posta adreslerini kullanıma sunan sağlayıcıları kullanmak isteyebilir.
Bir sağlayıcıyı engellemek için engellenen sağlayıcıya özgü yola yönelik istekler için durum kodu döndürmek üzere bir 404 yol kuralı oluşturun. Örneğin, Entra Id (eski adıyla Azure Active Directory, "aad" olarak bilinir) sağlayıcısını kısıtlamak için aşağıdaki yol kuralını ekleyin.
{
"route": "/.auth/login/aad",
"statusCode": 404
}
Kişisel verileri kaldırma
Bir uygulamaya son kullanıcı olarak onay verdiğinizde, uygulamanın kimlik sağlayıcısına bağlı olarak e-posta adresinize veya kullanıcı adınıza erişimi olur. Bu bilgiler sağlandıktan sonra, uygulamanın sahibi kişisel verilerin nasıl yönetileceğini karar verebilir.
Son kullanıcıların bu bilgileri sistemlerinden iptal etmek için tek tek web uygulamalarının yöneticilerine başvurması gerekir.
Azure Static Web Apps platformundan kişisel verileri kaldırmak ve platformun gelecekteki isteklerde bu bilgileri sağlamasını önlemek için aşağıdaki URL'yi kullanarak bir istek gönderin:
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.