Keycloak sürüm 18’i ayarlama

Keycloak üzerinden Yandex 360 servislerine ortak kurumsal giriş düzenlemek için öncelikle bir SAML uygulaması oluşturup ayarlamanız gerekir.

  1. Adım 1 SAML uygulamasını oluşturun ve yapılandırın
  2. Adım 2 Kullanıcı özniteliği eşlemesi yapılandırması
  3. Adım 3 Yandex 360’a aktarılması gereken verileri toplayın
  4. Yapılandırma sorunları

Adım 1 SAML uygulamasını oluşturun ve yapılandırın

  1. Keycloak yöneticisi Kullanıcı hesabına girin.
  2. Yönetim konsolunu açın: Administration Console’e tıklayın.
  3. Bir SAML uygulaması oluşturun:
    1. Sol panelde Clients’i seçin ve Create butonuna tıklayın.
    2. Client ID alanına https://yandex.ru/ girin (sonunda eğik çizgi gereklidir).
    3. Client Protocol alanında saml’yi belirtin.
    4. Client SAML Endpoint alanında Service URL: https://passport.yandex.ru/auth/sso/commit girin. Save’e tıklayın.
  4. Settings sekmesinde, SAML uygulama ayarlarını yapılandırın:
    1. Name alanına uygulamanın adını girin, örneğin yandex360.
    2. Etkinleştirilmişse Client Signature Required seçeneğini kapatın.
    3. Varsayılan olarak işaretli seçenekleri (Enabled, Include AuthnStatement, Sign Documents vb.) değiştirmeden bırakın.
    4. Name ID Format için e-posta seçin. Seçilen seçeneğin Yandex 360 ayarlarından bağımsız olarak iletilebilmesi için Force Name ID format seçeneğini etkinleştirin.

      Not.

      NameID özelliğinin değeri değiştirilemez, Yandex ID’de kullanıcı kimliğini belirlemek için kullanılır. Eğer UPN’yi değiştiriyorsanız, NameID olarak sizin LDAP’ta kullanıcıların değişmeyen özniteliklerinden birini belirtin.

      Eğer ayarlanabilen NameID’ye ihtiyacınız varsa, bunu kullanıcı özniteliği eşleme ayarlarında varsayılan olarak ayarlayın: Mappers menüsünde yeni User Attribute Mapper For NameID oluşturun.
    5. Valid Redirect URIs, Base URL, Master SAML Processing URL alanlarında Service URL: https://passport.yandex.ru/auth/sso/commit girin. Save’e tıklayın.
    6. Eğer çalışanlarınız Yandex 360 servislerini yalnızca Rus alan adıyla kullanmıyorsa, ek olarak Valid Redirect URIs alanında dil alan adlarının URL’lerini uç noktalara ekleyin.

      Dil alan adları için uç noktalar:

      • https://passport.yandex.com/auth/sso/commit – İngilizce için;
      • https://passport.yandex.kz/auth/sso/commit – Kazakça için;
      • https://passport.yandex.uz/auth/sso/commit – Özbekçe için;
      • https://passport.yandex.com.tr/auth/sso/commit – Türkçe için.
      Tam liste
      • https://passport.yandex.com/auth/sso/commit
      • https://passport.yandex.az/auth/sso/commit
      • https://passport.yandex.by/auth/sso/commit
      • https://passport.yandex.co.il/auth/sso/commit
      • https://passport.yandex.com/auth/sso/commit
      • https://passport.yandex.com.am/auth/sso/commit
      • https://passport.yandex.com.ge/auth/sso/commit
      • https://passport.yandex.com.tr/auth/sso/commit
      • https://passport.yandex.ee/auth/sso/commit
      • https://passport.yandex.eu/auth/sso/commit
      • https://passport.yandex.fi/auth/sso/commit
      • https://passport.yandex.fr/auth/sso/commit
      • https://passport.yandex.kg/auth/sso/commit
      • https://passport.yandex.kz/auth/sso/commit
      • https://passport.yandex.lt/auth/sso/commit
      • https://passport.yandex.lv/auth/sso/commit
      • https://passport.yandex.md/auth/sso/commit
      • https://passport.yandex.pl/auth/sso/commit
      • https://passport.yandex.ru/auth/sso/commit
      • https://passport.yandex.tj/auth/sso/commit
      • https://passport.yandex.tm/auth/sso/commit
      • https://passport.yandex.uz/auth/sso/commit

Adım 2 Kullanıcı özniteliği eşlemesi yapılandırması

  1. Scope sekmesinde Full Scope Allowed seçeneğini devre dışı bırakın.
  2. Mappers sekmesine gidin ve Add Builtin butonuna tıklayın.
  3. Listedeki öznitelikleri seçin ve Add selected’e tıklayın:
    • X500 email – elektronik posta adresi;
    • X500 surname – soyadı;
    • X500 givenName – adı.
  4. Keycloak ve Yandex 360 özniteliklerinin senkronizasyonunu ayarlayın: Her bir özniteliği açın ve SAML Attribute Name değerini değiştirin. Yandex 360 tarafından desteklenen SAML Attribute Name değerleri aşağıda listelenmiştir.

    SAML Attribute Name Value
    User.EmailAddress X500 email
    User.Firstname X500 givenName
    User.Surname X500 surname

    Sonuç olarak, öznitelik eşlemesi şöyle görünecektir:

SAML yanıtı şöyle görünmelidir:

<Attribute Name="User.EmailAddress">
    <AttributeValue>email@test.com</AttributeValue>
</Attribute>
<Attribute Name="User.Surname">
    <AttributeValue>Surname</AttributeValue>
</Attribute>
<Attribute Name="User.Firstname">
    <AttributeValue>Firstname</AttributeValue>
</Attribute>

Adım 3 Yandex 360’a aktarılması gereken verileri toplayın

Giriş sayfası URL’si

Giriş noktası adresi.

Almak için:

  1. Sol paneldeki yönetim konsolunda Realm Settings’i seçin ve SAML 2.0 Identity Provider Metadata bağlantısına tıklayın.

  2. Gerekli değer Location alanındadır, onu kopyalayın.

Kimlik sağlayıcısı yayımcısı
Alan adı Entity ID.

Giriş sayfası URL’si gibi almak mümkündür. Gerekli değer entityID alanındadır.

Doğrulama sertifikası
X.509 formatı token imzalama sertifikası.
Giriş sayfası URL’si gibi almak mümkündür. Gerekli değer X509Certificate alanındadır.
Ayrıca sertifika Keys sekmesinden de kopyalanabilir:
  1. RS256 satırına gidin.
  2. Certificate içeriğini kopyalayın.

İki aktif belirteç imzalama sertifikanız varsa ve şu anda hangi sertifikanın kullanıldığından emin değilseniz, aynı adımları ikinci sertifika için de tekrarlayın.

Daha sonra Kurumlar için Yandex 360 yapılandırmasına geçin.

Yapılandırma sorunları

Eğer öznitelik değerleri yanlışsa, SSO ile giriş yaptığınızda “Kimlik doğrulama başarısız oldu” mesajı ve bir hata kodu göreceksiniz:

email.no_in_response

Öznitelik adlarını User.Firstname, User.Surname, User.EmailAddress biçiminde belirtin. Farklı bir biçim belirlenirse, örneğin Firstname, giriş yapılamaz.

samlresponse.invalid

Giriş sayfası URL’si, kimlik sağlayıcısı yayımcısı veya doğrulama sertifikası yanlış belirtilirse, hata oluşur. Kurumlar için Yandex 360’ta bu SSO ayarlarının doğruluğunu kontrol edin.

unsupportable_domain

SAML response’taki User.EmailAddress e-posta özniteliğindeki alan adının, ana alan adıyla veya Yandex 360 kurumunun eş alan adlarından biriyle aynı olup olmadığını kontrol edin. Eğer eşleşmezlerse, bir hata mesajı görürsünüz.