Alıştırma - Kimlik doğrulama sağlayıcılarını ve erişimi yapılandırma
Alışveriş listesi web uygulamanızın bazı yollara erişimin güvenliğini sağlaması ve belirli kimlik doğrulama sağlayıcılarını devre dışı bırakması gerekir. Bu alıştırmada, bu sonucu elde etmek için web uygulamanızın yönlendirme yapılandırmasını güncelleştireceksiniz.
Bu alıştırmada aşağıdaki adımları tamamlayacaksınız:
- Bazı kimlik doğrulama sağlayıcılarını devre dışı bırakmak için yönlendirme yapılandırmasına kurallar ekleyin.
- Yalnızca kimliği doğrulanmış kullanıcıların erişebilmesi için ürün listesinin güvenliğini sağlayın.
- Güncelleştirilmiş uygulamayı dağıtın.
- Kısıtlamaların geçerli olup olmadığını test edin.
Kimlik doğrulama sağlayıcılarını devre dışı bırakma
Microsoft Entra kimlik doğrulama sağlayıcısını devre dışı bırakmak için uygulamamızın yönlendirme yapılandırmasını güncelleştireceğiz.
Projeyi Visual Studio Code'da açın.
Aşağıdaki dosyayı açın.
angular-app/staticwebapp.config.json
react-app/staticwebapp.config.json
svelte-app/staticwebapp.config.json
vue-app/staticwebapp.config.json
JSON nesnesinin köküne aşağıdaki yönlendirme yapılandırmasını ekleyin.
"routes": [ { "route": "/.auth/login/aad", "statusCode": 404 } ]
Bu yönlendirme kuralını ekleyerek kullanıcılarımızın Microsoft Entra kimlik doğrulama sağlayıcısına erişmesini engelleriz.
Ürün listesi erişiminin güvenliğini sağlama
Ardından ürün listesinin güvenliğini sağlamak istiyoruz, böylece api'ye yalnızca kimliği doğrulanmış erişim sağlanıyor. Bunun için yapılandırma dosyasına başka bir yönlendirme kuralı staticwebapp.config.json
ekleyeceğiz.
Dizinin en üstüne
routes
aşağıdaki kuralı ekleyin.{ "route": "/api/products/*", "allowedRoles": ["authenticated"] },
Tamamlanmış
staticwebapp.config.json
dosyanız aşağıdaki gibi görünmelidir:{ "routes": [ { "route": "/api/products/*", "allowedRoles": ["authenticated"] }, { "route": "/.auth/login/aad", "statusCode": 404 } ], "navigationFallback": { "rewrite": "/index.html", "exclude": ["*.{css,scss,js,png,gif,ico,jpg,svg}"] } }
Değişikliklerinizi dağıtma
Bu yapılandırmanın sonucunu test etmeden önce uygulamamızı yeniden dağıtacağız.
Visual Studio Code'da F1 tuşuna basarak komut paletini açın.
Git: Tümünü İşle'yi girin ve seçin.
İşleme iletisi olarak girin
Secure access
ve Enter tuşuna basın.F1 tuşuna basarak komut paletini açın.
Git: Gönder'i girip seçin ve Enter tuşuna basın.
Değişikliklerinizi gönderdikten sonra derleme ve dağıtma işleminin çalışmasını bekleyin. Değişiklikler daha sonra dağıtılan uygulamanızda görünür olmalıdır.
Yeni kısıtlamaları test edin
Uygulamanız yeniden dağıtıldıktan sonra yeni kısıtlamaların geçerli olup olmadığını test edebilirsiniz.
Visual Studio Code Gezgini penceresinde Statik Web Uygulamaları bölümüne dönün, my-static-web-app-and-authn öğesine sağ tıklayın ve ardından uygulamayı tarayıcınızda görüntülemek için Siteye Gözat'ı seçin.
Oturum açmadıysanız ürün listesi yerine Yetkisiz iletisini görmeniz gerekir.
Oturum açmak için kimlik doğrulama sağlayıcısı listesinde Microsoft Entra Id öğesini seçin.
Aşağıdakine benzer bir 404 hata sayfası görmeniz gerekir:
Uygulamanıza geri dönmek için tarayıcınızın geri düğmesine basın.
Oturum açmak için kimlik doğrulama sağlayıcısı listesinde GitHub'ı seçin.
İstenirse GitHub kimlik bilgilerinizi girin ve Azure onay sayfasında Onay Ver'i seçin.
Şimdi oturum açtınız ve ürün listesini görmeniz gerekir.
Sonraki adımlar
Tebrikler. Statik Web Uygulamanızda eksiksiz bir kimlik doğrulama iş akışı uyguladınız!