Tek oturum açma (TOA) ile ilgili sorunları giderme

Bu dokümanda, servis sağlayıcı Google iken SAML tabanlı tek oturum açma (TOA) özelliğinin G Suite ile entegrasyonu veya kullanımı sırasında sıklıkla karşılaşılan hata mesajlarının çözülebilmesi için talimatlar sunulmuştur.

Yapılandırma ve Etkinleştirme

"Bu alan adı, tek oturum açma özelliğini kullanacak şekilde yapılandırılmamış."

Bu hata genellikle, tek oturum açma özelliğini G Suite'in Standart (Ücretsiz) Sürümü ile kullanmaya çalıştığınızı gösterir. TOA'yı destekleyen bir G Suite sürümü kullandığınızdan eminseniz kimlik sağlayıcınızdaki yapılandırmayı kontrol ederek G Suite alan adınızı doğru girdiğinizden emin olun.

"Alan adı hatalı yapılandırıldığından, bu hesaba erişilemiyor. Lütfen daha sonra tekrar deneyin."

Bu hata, Google Yönetici konsolunda TOA'yı doğru bir şekilde ayarlamadığınızı gösterir. Lütfen hatayı gidermek için aşağıdaki adımları inceleyin:

  1. Yönetici konsolunda Güvenlik ve sonraÜçüncü taraf kimlik sağlayıcı ile TOA ayarlarını yap seçeneğine gidin ve Üçüncü taraf kimlik sağlayıcı ile TOA ayarlarını yap kutusunu işaretleyin.
  2. Kuruluşunuzun oturum açma, oturumu kapatma ve şifre değiştirme sayfalarının URL'lerini ilgili alanlara girin.
  3. Geçerli bir doğrulama sertifikası dosyası seçin ve yükleyin.
  4. Kaydet'i tıklayın, yaptığınız değişikliklerin geçerlilik kazanması için birkaç dakika bekleyin, ardından entegrasyonunuzu tekrar test edin.

SAML Yanıtını Ayrıştırma

"Gerekli yanıt parametresi SAMLResponse eksikti"

Bu hata iletisi, Kimlik Sağlayıcınızın Google'a bu türde geçerli bir SAML yanıtı sağlamadığını gösterir. Bu sorunun en olası nedeni Kimlik Sağlayıcı'daki bir yapılandırma sorunudur.

  • Kimlik Sağlayıcı günlüklerinizi kontrol edin ve SAML Yanıtı döndürmesini engelleyen bir şey olmadığından emin olun.
  • Kimlik Sağlayıcınızın G Suite'e şifrelenmiş bir SAML Yanıtı göndermediğinden emin olun. G Suite yalnızca şifrelenmemiş SAML Yanıtlarını kabul eder. Özellikle Microsoft Active Directory Federasyon Hizmetleri 2.0 sürümünün, varsayılan yapılandırmalarda genellikle şifrelenmiş SAML Yanıtları gönderdiğini unutmayın.
"Gerekli yanıt parametresi RelayState eksikti"

SAML 2.0 spesifikasyonu, Kimlik Sağlayıcıların, Kaynak Sağlayıcılardan (ör. G Suite) bir RelayState URL parametresi almasını ve bunu geri göndermesini gerektirir. G Suite, bu değeri SAML İsteğinde Kimlik Sağlayıcıya sunar. İçerikler ise her girişte bazı farklılıklara sahip olabilir. Kimlik doğrulamanın başarıyla tamamlanması için RelayState, SAML Yanıtında tamamen aynı şekilde döndürülmelidir. SAML standart spesifikasyonuna göre Kimlik Sağlayıcınız, giriş akışı sırasında RelayState parametresinde değişiklik yapmamalıdır.

  • Bir oturum açma girişimi sırasında HTTP üstbilgilerini yakalayarak bu sorunu daha kapsamlı bir şekilde inceleyin. RelayState parametresini SAML İsteği ve Yanıtıyla birlikte HTTP üstbilgilerinden çıkartın ve hem İstek hem de Yanıttaki RelayState değerlerinin birbiriyle aynı olmasını sağlayın.
  • Piyasadaki ticari veya açık kaynaklı TOA Kimlik Sağlayıcıların çoğu RelayState parametresini varsayılan olarak sorunsuz şekilde iletmektedir. En ileri düzeyde güvenlik ve güvenilirlik için bu mevcut çözümlerden birini kullanmanızı öneriyoruz ve kendi TOA yazılımınız için destek sunamadığımızı hatırlatmak istiyoruz.

SAML Yanıtının İçerikleri

"Giriş isteğiniz geçersiz [hedef|kitle|alıcı] bilgisi içerdiğinden bu hizmete erişilemiyor. Lütfen giriş yapıp tekrar deneyin."

Bu hata, SAML Onaylama işleminde hedef, kitle veya alıcı öğelerinin geçersiz bilgi içerdiğini ya da boş olduğunu belirtir. SAML onaylama işlemine her iki öğenin de dahil edilmesi zorunludur. Her bir öğeyle ilgili açıklamalar ve örnekler için aşağıdaki tabloyu inceleyin.

Öğe <Audience>
Açıklama Hedeflenen kitleyi tanımlayan URI'dir ve ACS URI değerini gerektirir. Not: Öğe değeri boş olamaz.
Gerekli Değer https://www.google.com/a/<example.com>/acs
Örnek

<saml:Conditions NotBefore="2014-11-05T17:31:37Z"
NotOnOrAfter="2014-11-05T17:37:07Z">
<saml:AudienceRestriction>
<saml:Audience>https://www.google.com/a/example.com/acs
</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>

 

Öğe <StatusResponseType> türündeki Destination özelliği
Açıklama SAML onayının gönderildiği yerin URI'si. İsteğe bağlıdır, ancak belirtilmesi durumunda bir ACS URI değeri sağlanması gerekir.
Gerekli Değer https://www.google.com/a/<example.com>/acs
Örnek

<saml:Response
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="7840062d379d82598d87ca04c8622f436bb03aa1c7"
Version="2.0"
IssueInstant="2014-11-05T17:32:07Z"
Destination="https://wwww.google.com/a/example.com/acs"
InResponseTo="midihfjkfkpcmbmfhhoehbokhbkeapbbinldpeen">

 

Öğe <SubjectConfirmationData> öğesinin Recipient özelliği
 
Açıklama
  • Konuyu alması planlanan varlığı tanımlar.
  • ACS URI'sini içermesi gereken gerekli özellik.
  • Büyük/küçük harfe duyarlıdır.
Gerekli Değer https://www.google.com/a/<example.com>/acs
Örnek

<saml:Subject>
<saml:NameID SPNameQualifier="google.com/a/example.com"
Format="urn:oasis:names:tc:SAML:2.0:nameid-format:email">kullanıcı@example.com</saml:NameID>
<saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectConfirmationData NotOnOrAfter="2014-11-05T17:37:07Z"
Recipient="https://www.google.com/a/example.com/acs"
InResponseTo="midihfjkfkpcmbmfhjoehbokhbkeapbbinldpeen"/>
</saml:SubjectConfirmation> 
</saml:Subject>

Gerekli tüm öğelerle ilgili ayrıntılar için lütfen TOA onayı gereksinimleri başlıklı makaleyi inceleyin.

"Giriş isteğiniz alıcı bilgisi içermediği için bu hizmete erişilemiyor. Lütfen giriş yapıp tekrar deneyin."

Bu hata genellikle Kimlik Sağlayıcınızdan gelen SAML Yanıtında okunabilir bir Recipient değeri olmadığı (veya Recipient değerinin yanlış olduğu) anlamına gelir. Recipient değeri, SAML Yanıtının önemli bir bileşenidir.

  1. Bir oturum açma girişimi sırasında HTTP üstbilgilerini yakalayarak bu sorunu daha kapsamlı bir şekilde inceleyin.
  2. HTTP üstbilgilerinden SAML İsteğini ve Yanıtını çıkartın.
  3. SAML Yanıtında Recipient değerinin mevcut olduğundan ve bu değerin SAML Yanıtındaki değerle aynı olduğundan emin olun.

Not: Bu hata mesajı şu şekilde de görüntülenebilir: "Giriş isteğiniz geçersiz alıcı bilgileri içerdiği için bu hizmete erişilemiyor. Lütfen giriş yapıp tekrar deneyin."

"Oturum açma kimlik bilgileriniz doğrulanamadığı için bu hesaba erişilemiyor."

Bu hata, kimlik doğrulama akışını imzalamak için kullandığınız sertifikalarda bir sorun olduğunu gösterir. Bu genellikle, SAML Yanıtını imzalamak için kullanılan özel anahtarın, G Suite kayıtlarında olan genel anahtar sertifikasıyla eşleşmediği anlamına gelir.

SAML Yanıtınız geçerli bir Google Hesapları kullanıcı adı içermediğinde de bu hatayı alabilirsiniz. G Suite, NameID adındaki XML öğesi için SAML Yanıtını ayrıştırır ve bu öğenin bir G Suite kullanıcı adı veya tam G Suite e-posta adresi içermesini bekler.

  • G Suite'e geçerli bir sertifika yüklediğinizden emin olun ve gerekiyorsa bu sertifikayı değiştirin. Google Yönetici konsolunda Güvenlik ve sonraÜçüncü taraf kimlik sağlayıcı ile TOA ayarlarını yap seçeneğine gidin ve Sertifikayı değiştir'i tıklayın.
  • NameID öğenizde tam e-posta adresi kullanıyorsanız (birden çok alan adına sahip bir G Suite ortamında TOA kullanıyorsanız tam e-posta adresi kullanıyor olmanız gerekir), NameID öğesinin Format özelliğinin tam e-posta adresinin kullanılacağını belirttiğinden emin olun. Örnek: Format="urn:oasis:names:tc:SAML:2.0:nameid-format:email"
  • NameID öğesini geçerli bir kullanıcı adı veya e-posta adresiyle doldurduğunuzdan emin olun. Emin olmak için, G Suite'e gönderdiğiniz SAML Yanıtını açıp NameID öğesinin değerini kontrol edin.
  • Kimlik Sağlayıcınız SAML Onaylama işleminizi şifreliyorsa bu şifrelemeyi devre dışı bırakın.
  • SAML Yanıtının standart olmayan ASCII karakterlerini içermediğinden emin olun. Bu sorun en sık, AttributeStatement öğesindeki DisplayName, GivenName ve Surname özelliklerinde görülür. Örneğin:
    • <Attribute Name="http://schemas.microsoft.com/identity/claims/displayname">
      <AttributeValue>Bülbül, Ela</AttributeValue> </Attribute>
    • <Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname">
      <AttributeValue>Bülbül</AttributeValue> </Attribute>
"Giriş kimlik bilgilerinizin süresi dolduğu için bu hizmete erişilemiyor. Lütfen giriş yapıp tekrar deneyin."

Güvenlikle açısından TOA giriş akışının belirli bir zaman aralığı içinde tamamlanması gerekir; aksi takdirde kimlik doğrulama başarısız olur. Kimlik Sağlayıcınızdaki saat doğru değilse oturum açma girişimlerinin çoğu veya tümü, kabul edilebilir zaman aralığının kapsamı dışında görünür ve kimlik doğrulama, yukarıdaki hata iletisiyle başarısız olur.

  • Kimlik Sağlayıcınızın sunucusunda saati kontrol edin. Bu hata hemen hemen her zaman, Kimlik Sağlayıcı saatinin yanlış olmasından kaynaklanır. Bu da, SAML Yanıtına yanlış zaman damgalarının eklenmesine neden olur.
  • Kimlik Sağlayıcı sunucu saatini, güvenilir bir internet saat sunucusu ile yeniden senkronize edin. Bir üretim ortamında bu sorun aniden meydana gelirse, nedeni büyük olasılıkla senkronizasyonun başarısız olmasıdır; bu da, sunucu saatinin yanlış olmasına neden olur. Saat senkronizasyonunun tekrar edilmesiyle (mümkünse daha güvenilir bir saat sunucusu ile) bu sorun çok kısa sürede çözülecektir.
  • Bu sorun aynı zamanda, SAML'yi daha önceki bir oturum açma girişiminden yeniden gönderdiğinizde de meydana gelir. SAML İsteğinizi ve Yanıtınızı (oturum açma girişimi sırasında yakalanan HTTP üstbilgi günlüklerinden elde edilen) incelemeniz, bu hatanın daha iyi ayıklanmasına yardımcı olur.
"Giriş kimlik bilgileriniz henüz geçerli olmadığından bu hizmete erişemezsiniz. Lütfen giriş yapıp tekrar deneyin."

Güvenlikle açısından TOA giriş akışının belirli bir zaman aralığı içinde tamamlanması gerekir; aksi takdirde kimlik doğrulama başarısız olur. Kimlik Sağlayıcınızdaki saat doğru değilse oturum açma girişimlerinin çoğu veya tümü, kabul edilebilir zaman aralığının kapsamı dışında görünür ve kimlik doğrulama, yukarıdaki hata iletisiyle başarısız olur.

  • Kimlik Sağlayıcınızın sunucusunda saati kontrol edin. Bu hata hemen hemen her zaman, Kimlik Sağlayıcı saatinin yanlış olmasından kaynaklanır. Bu da, SAML Yanıtına yanlış zaman damgalarının eklenmesine neden olur.
  • Kimlik Sağlayıcı sunucu saatini, güvenilir bir internet saat sunucusu ile yeniden senkronize edin. Bir üretim ortamında bu sorun aniden meydana gelirse, nedeni büyük olasılıkla senkronizasyonun başarısız olmasıdır; bu da, sunucu saatinin yanlış olmasına neden olur. Saat senkronizasyonunun tekrar edilmesiyle (mümkünse daha güvenilir bir saat sunucusu ile) bu sorun çok kısa sürede çözülecektir.
Bu size yardımcı oldu mu?
Bunu nasıl iyileştirebiliriz?