0

İki basit uygulama oluşturdum, biri MVC Web sitesi diğeri MVC API'sidir. Web siteleri API'dan birkaç yöntem kullanır.Web uygulamasından api API'ye geçme belirteci (kullanıcı yetkisi)

Her ikisini de Azure'a, 'Uygulama Servisleri', web sitesi Web Uygulaması, Api Uygulaması olarak Api'ye dağıttım. Bu noktaya kadar hiçbir kimlik doğrulama uygulamamış ve iyi çalışıyor.

Şimdi, her iki kaynağın da kimlik doğrulamasını kullanmasını istiyorum. Dolayısıyla, Azure Portalı'ndan hem WebApp hem de ApiApp için kimlik doğrulamayı etkinleştirdim. Ben aynı değerleri ayarlamak Api App için bir Microsoft Hesabı

yapılandırılmış Microsoft Hesabı ile Giriş Yap: doğrulanmış değilken almaya Eylem: Uygulama Servis Kimlik: WebApp olarak Ben değerleri ayarlamak Yapılacak işlemin istisnası, bunu 'İzin Verme (Eylem Yok)' olarak ayarladım. Api App kodunda kontrol cihazımda [Authorize] özelliğini ayarlıyorum.

Şimdi, WebApp'a gittiğimde, giriş yapabileceğim ve Uygulamayı görebileceğim Microsoft Hesabı Giriş Sayfasına yönlendiriliyor. Bu harika çalışıyor. Ancak, bu kimlik bilgilerini herhangi bir şekilde Api Uygulamamıza iletemiyorum. Bir simge oluşturmak (veya almak) ve bunu Api Uygulamasına iletmek mümkün mü? Yani Api App’de otomatik olarak kimlik doğrulaması yapıyorum ve buradan ihtiyacım olan kullanıcı verilerini alabilirim.

cevap

1

Webapi tarafında OAuth for Bearer belirteci tabanlı kimlik doğrulamasını kullanabilirsiniz. Web api'nizi belirteçler oluşturmak için yapılandırın. Bir kez mvc uygulamasında kimlik doğrulaması yapıldıktan sonra, api sunucusuna bir istek gönderiniz - grant_type = şifre & kullanıcıadı = uname & password = pwd. belirteci aldığınızda, bunu bir çerez/yerel depoda saklamanız gerekir, ardından her istekte web api'ye izin verilir, bu belirteç değerine sahip Yetkilendirme üstbilgisini eklemeniz gerekir.

İlgili konular