Azure Active Directory Kimlik Doğrulama Kitaplığı

Uyarı

Bu içerik eski Azure AD v1.0 uç noktasına yöneliktir. Yeni projeler için Microsoft kimlik platformu kullanın.

Azure Active Directory Kimlik Doğrulama Kitaplığı (ADAL) v1.0, uygulama geliştiricilerinin bulutta veya şirket içi Active Directory'de (AD) kullanıcıların kimliğini doğrulamasını ve API çağrılarının güvenliğini sağlamak için belirteçler almasını sağlar. ADAL, şunlar gibi özelliklerle geliştiricilerin kimlik doğrulamasını kolaylaştırır:

  • Erişim belirteçlerini ve yenileme belirteçlerini depolayan yapılandırılabilir belirteç önbelleği
  • Erişim belirtecinin süresi dolduğunda ve yenileme belirteci kullanılabilir olduğunda otomatik belirteç yenileme
  • Zaman uyumsuz yöntem çağrıları için destek

Uyarı

Azure AD v2.0 kitaplıklarını mı arıyorsunuz? MSAL kitaplık kılavuzuna göz atın.

Uyarı

Azure Active Directory Kimlik Doğrulama Kitaplığı (ADAL) kullanım dışı bırakıldı. Lütfen Microsoft Authentication Library (MSAL)kullanın. ADAL kullanan mevcut uygulamalarınız varsa bunları MSAL'ye geçirmeyi unutmayın.

Microsoft tarafından desteklenen İstemci Kitaplıkları

Platforma Kütüphane İndir Kaynak kodu Örnek Referans
.NET İstemcisi, Windows Mağazası, UWP, Xamarin iOS ve Android ADAL .NET v3 NuGet GitHub Masaüstü uygulaması
JavaScript ADAL.js GitHub GitHub Tek sayfalı uygulama
iOS, macOS ADAL GitHub GitHub iOS uygulaması
Android ADAL Maven GitHub Android uygulaması JavaDocs
Node.js ADAL npm GitHub web uygulaması Node.js Referans
Java ADAL4J Maven GitHub Java web uygulaması Referans
Piton ADAL GitHub GitHub Python web uygulaması Referans

Microsoft tarafından desteklenen Sunucu Kitaplıkları

Platforma Kütüphane İndir Kaynak kodu Örnek Referans
.NET AzureAD için OWIN NuGet GitHub MVC Uygulama
.NET OpenIDConnect için OWIN NuGet GitHub Web Uygulaması
.NET WS-Federation için OWIN NuGet GitHub MVC Web App
.NET .NET 4.5 için Kimlik Protokolü Uzantıları NuGet GitHub
.NET .NET 4.5 için JWT İşleyicisi NuGet GitHub
Node.js Azure AD Passport npm GitHub Web API'sı

Senaryo

Uzak kaynağa erişen bir istemcide ADAL kullanmaya yönelik üç yaygın senaryo aşağıdadır:

Bir cihazda çalışan yerel istemci uygulamasının kullanıcılarının kimliğini doğrulama

Bu senaryoda, bir geliştiricinin web API'si gibi uzak bir kaynağa erişmesi gereken bir mobil istemci veya masaüstü uygulaması vardır. Web API'si anonim çağrılara izin vermez ve kimliği doğrulanmış bir kullanıcı bağlamında çağrılmalıdır. Web API'si, belirli bir Azure AD kiracısı tarafından verilen erişim belirteçlerine güvenecek şekilde önceden yapılandırılmıştır. Azure AD, bu kaynak için erişim belirteçleri vermek üzere önceden yapılandırılmıştır. Geliştirici, istemciden web API'sini çağırmak için Azure AD ile kimlik doğrulamasını kolaylaştırmak için ADAL kullanır. ADAL kullanmanın en güvenli yolu, kullanıcı kimlik bilgilerini toplamak için kullanıcı arabirimini işlemesini sağlamaktır (tarayıcı penceresi olarak işlenir).

ADAL, kullanıcının kimliğini doğrulamayı, Azure AD'den erişim belirteci almayı ve belirteci yenilemeyi ve ardından erişim belirtecini kullanarak web API'sini çağırmayı kolaylaştırır.

Azure AD kimlik doğrulamasını kullanarak bu senaryoyu gösteren bir kod örneği için bkz. Native Client WPF Application to Web API.

Web sunucusunda çalışan gizli bir istemci uygulamasının kimliğini doğrulama

Bu senaryoda, bir geliştiricinin web API'si gibi uzak bir kaynağa erişmesi gereken bir sunucuda çalışan bir uygulaması vardır. Web API'si anonim çağrılara izin vermez, bu nedenle yetkili bir hizmetten çağrılmalıdır. Web API'si, belirli bir Azure AD kiracısı tarafından verilen erişim belirteçlerine güvenecek şekilde önceden yapılandırılmıştır. Azure AD, istemci kimlik bilgilerine (istemci kimliği ve gizli dizi) sahip bir hizmete bu kaynak için erişim belirteçleri vermek üzere önceden yapılandırılmıştır. ADAL, Web API'sini çağırmak için kullanılabilecek bir erişim belirteci döndüren Azure AD ile hizmetin kimlik doğrulamasını kolaylaştırır. ADAL ayrıca erişim belirtecini önbelleğe alarak ve gerektiğinde yenileyerek erişim belirtecinin ömrünü yönetmeyi de işler. Bu senaryosunu gösteren bir kod örneği için bkz. Daemon konsolu Application to Web API.

Bir kullanıcı adına sunucuda çalışan gizli bir istemci uygulamasının kimliğini doğrulama

Bu senaryoda, bir geliştiricinin web API'si gibi uzak bir kaynağa erişmesi gereken bir sunucuda çalışan bir web uygulaması vardır. Web API'si anonim çağrılara izin vermez, bu nedenle kimliği doğrulanmış bir kullanıcı adına yetkili bir hizmetten çağrılmalıdır. Web API'si, belirli bir Microsoft Entra kiracısı tarafından verilen erişim belirteçlerine güvenecek şekilde önceden yapılandırılmıştır ve Microsoft Entra Kimliği, bu kaynak için istemci kimlik bilgilerine sahip bir hizmete erişim belirteçleri vermek üzere önceden yapılandırılmıştır. Kullanıcının kimliği web uygulamasında doğrulandıktan sonra, uygulama Microsoft Entra Id'den kullanıcı için bir yetkilendirme kodu alabilir. Web uygulaması daha sonra Microsoft Entra Id'den uygulamayla ilişkili yetkilendirme kodunu ve istemci kimlik bilgilerini kullanarak bir kullanıcı adına erişim belirteci almak ve belirteç yenilemek için ADAL kullanabilir. Web uygulaması erişim belirtecini ele geçirdikten sonra, belirtecin süresi dolana kadar web API'sini çağırabilir. Belirtecin süresi dolduğunda, web uygulaması daha önce alınan yenileme belirtecini kullanarak yeni bir erişim belirteci almak için ADAL kullanabilir. Bu senaryoyu gösteren bir kod örneği için bkz. web API'sine yerel istemciden Web API'sine .

Ayrıca Bkz.