IdP başlatılan SSO ve SP başlatılan SSO
IdP başlatılan SSO ve SP başlatılan SSO arasındaki farkları ve neden SP başlatılan SSO'nun daha güvenli olduğunu öğrenin.
IdP başlatılan SSO ve SP başlatılan SSO arasındaki farkları ve neden SP başlatılan SSO'nun daha güvenli olduğunu öğrenin.
Adından da anlaşılacağı gibi, SP başlatılan SSO hizmet sağlayıcı tarafından başlatılır. Kullanıcı, SP'nin web sitesindeki bir kaynağa erişerek kimlik doğrulama sürecini başlatır. SP, kullanıcının kimlik doğrulaması için kullanıcıyı IdP'ye yönlendirir. Kullanıcı doğrulandıktan sonra IdP, bir token (OIDC) ya da SAML beyanı (SAML) oluşturur ve SP'ye geri gönderir. SP token veya beyanı doğrular ve kullanıcıya erişim izni verir.
SP başlatılan SSO'nun aksine, IdP başlatılan SSO kimlik sağlayıcı tarafından başlatılır. Kullanıcı kimlik doğrulama sürecini IdP'nin web sitesinden başlatır. Normalde, kullanıcı IdP'nin portalında desteklenen SP uygulamalarının bir listesini bulacaktır. Kullanıcı SP uygulamasına tıklar ve önceden doğrulanmış kimlik ile SP'nin web sitesine yönlendirilir.

IdP başlatılan SSO, çeşitli üçüncü taraf uygulamalara veya hizmetlere bağlı büyük işletmeler ve organizasyonlar tarafından daha fazla benimsenir. Salesforce, Workday gibi. Kullanıcı erişimini birden fazla uygulamaya yönetmek ve SSO kimlik doğrulamalarını uygulamak için merkezi bir yol sağlar. IdP başlatılan SSO'yu etkinleştirerek, çalışanlar IdP'nin portalından bağlı uygulamalara doğrudan erişebilirler, her uygulamanın web sitesini ziyaret etmek zorunda kalmadan. Kullanıcı deneyimini iyileştirir ve giriş süresini azaltır.
IdP başlatılan SSO, SP başlatılan SSO'ya göre daha fazla risk taşır.
Kimlik doğrulama bağlamının eksikliği: IdP'den başlatılan tüm kimlik doğrulama istekleri isteğe bağlıdır. Böylece, kimlik doğrulama sürecini SP başlatarak, izinsiz erişime kapı açabilir. Kullanıcının oturumu ele geçirilebilir. Kötü niyetli bir kişi, kullanıcının bilgisi veya izni olmadan kullanıcı adına giriş yapmayı başlatabilir.
Oturum sabitleme: SP kimlik doğrulama sürecini başlatmadığı için, kullanıcının oturumu IdP'nin oturumu ile sabitlenebilir. Bu, saldırganın kullanıcının oturumunu IdP'nin oturumuna sabitleyerek, kullanıcının hesabına izinsiz erişim sağlayabileceği oturum sabitleme saldırılarına yol açabilir.
Phishing saldırıları: IdP başlatılan SSO, phishing saldırılarına karşı savunmasız olabilir. Kötü niyetli bir kişi, kullanıcıyı sahte bir IdP portalına ziyaret ettirip kullanıcının kimlik bilgilerini çalabilir. Kullanıcı giriş yaptıktan sonra, saldırgan kullanıcıyı önceden doğrulanmış bir kimlikle SP'ye yönlendirebilir.
İstek doğrulaması konusunda garanti yok: SP'nin kimlik doğrulama sürecini başlattığı bir SP başlatılan SSO'da, normalde SP, isteğin bütünlüğünü korumak için IdP'ye gerekli güvenlik bilgilerini ekler. SP kimlik doğrulama yanıtını aldığında, bu bilgileri doğrulayıp herhangi bir CSRF saldırısını önlemek için kullanır. Örneğin, OIDC'deki state parametresi ve SAML'deki RelayState. Ancak, IdP başlatılan SSO'da, SP kimlik doğrulama sürecini başlatmadığı için, SP isteğin doğrulanması konusunda garanti veremez.
OIDC, yukarıdaki güvenlik açıkları nedeniyle IdP başlatılan SSO'yu desteklemez. OIDC, isteğin bütünlüğünü sağlamak için kimlik doğrulama sürecini SP'nin başlatmasını gerektirir. Kullanıcı üçüncü taraf bir hizmetten kimlik doğrulama sürecini başlatırsa bile, kullanıcı önce kimlik doğrulama sürecini başlatmak için SP'ye yönlendirilmelidir.
Ancak, SAML'de, IdP başlatılan SSO mümkündür. IdP, SP kimlik doğrulama sürecini başlatmadan bir SAML beyanı üretebilir. SAML IdP başlatılan SSO'da, uygun bir RequestID ve RelayState olmadan bir SAML beyanı doğrudan SP'nin ACS URL'sine gönderilebilir. SP, bu tür bir beyanı işleyebilmelidir ve kullanıcıya erişim izni vermelidir. (Not: RequestID ve RelayState olmadan SP isteğin bütünlüğü konusunda garanti veremez).
IdP başlatılan SSO, kullanıcı erişimini birden fazla uygulamaya merkezi bir şekilde yönetme imkanı sağlasa da, SP başlatılan SSO'ya göre daha fazla risk taşır. SP başlatılan SSO daha güvenlidir ve kimlik doğrulama isteğinin bütünlüğü konusunda daha fazla garanti sağlar. OIDC ve SAML tabanlı SSO için SP başlatılan SSO kullanılması tavsiye edilir.