Azure Active Directory sorunsuz çoklu oturum açma: Ayrıntılı Teknik İncelemeAzure Active Directory Seamless Single Sign-On: Technical deep dive

Bu makalede, Azure Active Directory sorunsuz çoklu oturum açma (sorunsuz SSO) özelliğinin nasıl çalıştığı ile teknik ayrıntılar sunar.This article gives you technical details into how the Azure Active Directory Seamless Single Sign-On (Seamless SSO) feature works.

Sorunsuz çoklu oturum açma nasıl çalışır?How does Seamless SSO work?

Bu bölüm, üç bölümü vardır:This section has three parts to it:

  1. Sorunsuz çoklu oturum açma özelliği kurulumu.The setup of the Seamless SSO feature.
  2. Nasıl bir tek kullanıcı işlemi bir web tarayıcısında oturum açma sorunsuz çoklu oturum açma ile çalışır.How a single user sign-in transaction on a web browser works with Seamless SSO.
  3. Nasıl sorunsuz SSO ile oturum açma tek bir kullanıcı işlemi yerel bir istemci üzerinde çalışır.How a single user sign-in transaction on a native client works with Seamless SSO.

Nasıl iş ayarlayamayan dilbilimsel?How does set up work?

Sorunsuz çoklu oturum açma etkin gösterildiği gibi Azure AD Connect kullanarak burada.Seamless SSO is enabled using Azure AD Connect as shown here. Bu özellik etkinleştirilirken, aşağıdaki adımlar oluşur:While enabling the feature, the following steps occur:

  • Bir bilgisayar hesabı (AZUREADSSOACC) şirket içi (Azure AD Connect kullanarak) Azure AD ile eşitlemek için her AD ormanında Active Directory (AD) oluşturulur.A computer account (AZUREADSSOACC) is created in your on-premises Active Directory (AD) in each AD forest that you synchronize to Azure AD (using Azure AD Connect).
  • Ayrıca, bir Kerberos hizmet asıl adı (SPN) sayısı, Azure AD oturum açma işlemi sırasında kullanılacak oluşturulur.In addition, a number of Kerberos service principal names (SPNs) are created to be used during the Azure AD sign-in process.
  • Bilgisayar hesabının Kerberos şifre çözme anahtarı güvenli bir şekilde Azure AD ile paylaşılır.The computer account's Kerberos decryption key is shared securely with Azure AD. Birden fazla AD ormanına varsa, her bir bilgisayar hesabının kendi benzersiz Kerberos şifre çözme anahtarı gerekir.If there are multiple AD forests, each computer account will have its own unique Kerberos decryption key.

Önemli

AZUREADSSOACC Bilgisayar hesabını güvenlik nedenleriyle kesin korunması gerekir.The AZUREADSSOACC computer account needs to be strongly protected for security reasons. Yalnızca Domain Admins bilgisayar hesabını yönetmek görebilmeniz gerekir.Only Domain Admins should be able to manage the computer account. Bilgisayar hesabının Kerberos temsilcisi seçmeyi devre dışı bırakılır ve Active Directory içindeki başka bir hesap temsilci izinlerine sahip olduğunu sağlamak AZUREADSSOACC bilgisayar hesabı...Ensure that Kerberos delegation on the computer account is disabled, and that no other account in Active Directory has delegation permissions on the AZUREADSSOACC computer account.. Bilgisayar hesabının bir kuruluş birimi (OU) içinde yanlışlıkla silinmekten güvenli olduğu ve yalnızca etki alanı yöneticileri erişimi Store.Store the computer account in an Organization Unit (OU) where they are safe from accidental deletions and where only Domain Admins have access. Bilgisayar hesabının Kerberos şifre çözme anahtarı da hassas olarak düşünülmelidir.The Kerberos decryption key on the computer account should also be treated as sensitive. Yüksek oranda olmasını öneririz, Kerberos şifre çözme anahtarını başa döndürmek , AZUREADSSOACC en az 30 günde bir bilgisayar hesabı.We highly recommend that you roll over the Kerberos decryption key of the AZUREADSSOACC computer account at least every 30 days.

Kurulum tamamlandıktan sonra sorunsuz çoklu oturum açma herhangi diğer tümleşik Windows kimlik doğrulaması (IWA) kullanan oturum aynı şekilde çalışır.Once the set-up is complete, Seamless SSO works the same way as any other sign-in that uses Integrated Windows Authentication (IWA).

Nasıl iş sorunsuz SSO ile bir web tarayıcısında oturum?How does sign-in on a web browser with Seamless SSO work?

Bir web tarayıcısında oturum açma akışı şu şekildedir:The sign-in flow on a web browser is as follows:

  1. Kullanıcı bir web uygulamasına erişmeye çalışır (örneğin, Outlook Web App - https://outlook.office365.com/owa/) bir etki alanına katılmış Kurumsal CİHAZDAN Kurumsal ağınızdaki.The user tries to access a web application (for example, the Outlook Web App - https://outlook.office365.com/owa/) from a domain-joined corporate device inside your corporate network.

  2. Kullanıcı zaten oturum açmamış, kullanıcının Azure AD oturum açma sayfasına yönlendirilir.If the user is not already signed in, the user is redirected to the Azure AD sign-in page.

  3. Kullanıcı türleri kendi Azure AD oturum açma sayfasında kullanıcı adı.The user types in their user name into the Azure AD sign-in page.

    Not

    İçin belirli uygulamaları, adım 2 ve 3 atlanır.For certain applications, steps 2 & 3 are skipped.

  4. JavaScript arka planda kullanarak, Azure AD aracılığıyla bir Kerberos anahtarı sağlamak için 401 Yetkisiz yanıt, tarayıcının sınar.Using JavaScript in the background, Azure AD challenges the browser, via a 401 Unauthorized response, to provide a Kerberos ticket.

  5. Tarayıcı için Active Directory'den bir bilet sırayla ister AZUREADSSOACC (Azure AD temsil eden) bilgisayar hesabı.The browser, in turn, requests a ticket from Active Directory for the AZUREADSSOACC computer account (which represents Azure AD).

  6. Active Directory bilgisayar hesabına bulur ve bir Kerberos anahtarı bilgisayar hesabının parolası ile şifrelenmiş tarayıcıya döndürür.Active Directory locates the computer account and returns a Kerberos ticket to the browser encrypted with the computer account's secret.

  7. Tarayıcı, alınan Kerberos anahtarı, Active Directory'den Azure AD'ye iletir.The browser forwards the Kerberos ticket it acquired from Active Directory to Azure AD.

  8. Azure AD, önceden paylaşılan anahtar kullanan kurumsal cihazda oturum açan kullanıcının kimliğini içeren Kerberos anahtarı şifresini çözer.Azure AD decrypts the Kerberos ticket, which includes the identity of the user signed into the corporate device, using the previously shared key.

  9. Değerlendirme sonra Azure AD belirteç uygulamaya geri döndürür veya çok faktörlü kimlik doğrulaması gibi ek kanıtları gerçekleştirmek için kullanıcıya sorar.After evaluation, Azure AD either returns a token back to the application or asks the user to perform additional proofs, such as Multi-Factor Authentication.

  10. Kullanıcı oturum açma başarılı olursa, uygulamaya erişmeye çalıştığında bir kullanıcıdır.If the user sign-in is successful, the user is able to access the application.

Aşağıdaki diyagram, tüm bileşenleri ve ilgili adımları gösterir.The following diagram illustrates all the components and the steps involved.

Sorunsuz çoklu oturum açma uygulama akışı On - Web

Sorunsuz çoklu oturum açma başarısız olursa, oturum açma deneyimini normal davranışını - yani, kullanıcının oturum açmak için parola girmeniz gerekiyorsa geri döner. fırsatçı, yani.Seamless SSO is opportunistic, which means if it fails, the sign-in experience falls back to its regular behavior - i.e, the user needs to enter their password to sign in.

Nasıl sorunsuz çoklu oturum açma çalışma ile yerel bir istemcide oturum?How does sign-in on a native client with Seamless SSO work?

Yerel bir istemci oturum açma akışı aşağıdaki gibidir:The sign-in flow on a native client is as follows:

  1. Kullanıcı bir etki alanına katılmış Kurumsal CİHAZDAN Kurumsal ağınızdaki (örneğin, Outlook istemcisi) yerel bir uygulamaya erişmeye çalışır.The user tries to access a native application (for example, the Outlook client) from a domain-joined corporate device inside your corporate network.
  2. Kullanıcı zaten oturum açmamış, yerel uygulama cihazın Windows oturumu kullanıcı adını alır.If the user is not already signed in, the native application retrieves the username of the user from the device's Windows session.
  3. Uygulama, kullanıcı adını Azure AD'ye gönderir ve kiracınızın MEX WS-Trust uç noktasını alır.The app sends the username to Azure AD, and retrieves your tenant's WS-Trust MEX endpoint. Bu WS-Trust uç noktası yalnızca sorunsuz çoklu oturum açma özelliği tarafından kullanılan ve WS-Trust Protokolü Azure AD'de genel bir uygulama değildir.This WS-Trust endpoint is used exclusively by the Seamless SSO feature, and is not a general implementation of the WS-Trust protocol on Azure AD.
  4. Uygulama daha sonra WS-Trust MEX uç nokta kimlik doğrulama uç noktası kullanılabilir Tümleşik olmadığını görmek için sorgular.The app then queries the WS-Trust MEX endpoint to see if integrated authentication endpoint is available. Tümleşik kimlik doğrulaması uç noktası yalnızca sorunsuz çoklu oturum açma özelliği tarafından kullanılır.The integrated authentication endpoint is used exclusively by the Seamless SSO feature.
  5. Adım 4 başarılı olursa, bir Kerberos challenge verilir.If step 4 succeeds, a Kerberos challenge is issued.
  6. Uygulama Kerberos anahtarını almak mümkün ise, bunu Azure AD'nin tümleşik kimlik doğrulama uç noktası kadar iletir.If the app is able to retrieve the Kerberos ticket, it forwards it up to Azure AD's integrated authentication endpoint.
  7. Azure AD, Kerberos anahtarı şifresini çözer ve bunu doğrular.Azure AD decrypts the Kerberos ticket and validates it.
  8. Azure AD kullanıcının oturum açtığı ve uygulamaya bir SAML belirteci verir.Azure AD signs the user in, and issues a SAML token to the app.
  9. Uygulama, Azure AD'nin OAuth2 belirteç uç noktası için SAML belirtecinde ardından gönderir.The app then submits the SAML token to Azure AD's OAuth2 token endpoint.
  10. Azure AD, SAML belirteci doğrular ve uygulamaya bir erişim belirteci ve yenileme belirteci için belirtilen kaynak ve bir kimlik belirteci verir.Azure AD validates the SAML token, and issues to the app an access token and a refresh token for the specified resource, and an id token.
  11. Kullanıcı, uygulamanın kaynağına erişimi alır.The user gets access to the app's resource.

Aşağıdaki diyagram, tüm bileşenleri ve ilgili adımları gösterir.The following diagram illustrates all the components and the steps involved.

Sorunsuz tek oturum açma - yerel uygulama akışı

Sonraki adımlarNext steps