Aşağıdaki makale size yardımcı olacaktır:SAML ve OAuth Arasındaki Temel Farklılıklar
SAML ve OAuth ile ne demek istiyorsunuz?
SAML: Bir kimlik doğrulama yöntemi, güvenlik onayı biçimlendirme dilidir (SAML). Sabah iş bilgisayarınıza giriş yaptığınızda, neredeyse kesin olarak SAML kullanmışsınızdır.
OAuth: Bir tür yetkilendirme işlemi, açık bir yetkilendirmedir (OAuth). Yeni bir kullanıcı adı ve şifre girmeden servisler arasında geçiş yapabilirsiniz. Google’da oturum açtıysanız ve bu kimlik bilgilerini Yahoo için kullandıysanız, OAuth’u kullanmışsınız demektir.
Bu sadece genel bir bakış, bu blogda ele alınacak konular:
İçerik tablosu
SAML nedir?
Adı, her şeyden önce: Güvenlik Onayı İşaretleme Dili. Çoğu “X İşaretleme Dili” uygulaması gibi SAML de şu temel üzerine kuruludur: xml. Adın diğer yarısı, SAML’nin amacını doğru bir şekilde tanımlar; bu, bir sistemin bir kullanıcının kimliğini, önce o kullanıcının kimliğini doğruladıktan sonra bir başkasına onaylamasını sağlar.
Adın “web”, “internet” veya “SSO” sözcüklerini içermediğini fark edeceksiniz. Bunlar en yaygın SAML uygulamaları olsa da tek uygulama olmaktan çok uzaktır. SAML, özünde herhangi bir kullanım durumuna veya teknolojiye özgü olmayan genel bir çerçevedir ve hem avantajları hem de dezavantajları vardır.
Genel olduğu için çeşitli senaryolarda kullanılabilir; ancak, esnekliği nedeniyle, farklı uygulamalar farklı varsayımlarda bulunduğundan yapılandırma karmaşık olabilir. Ayrıca, ham yapılandırmanın Web SSO için SAML’yi yapılandırmaya yönelik önemli miktarda ortak metin içerdiği anlamına gelir.
SAML’nin Çalışması
- SAML, kimlik doğrulama ve kimlik doğrulama için açık bir standarttır. Tipik bir ofis ortamında şirketin dahili işlevlerinden herhangi birine erişmek için bir çalışanın oturum açması gerekir.
- Başarılı SAML kimlik doğrulamasının ardından kullanıcı, kurumsal intranet, Microsoft Office ve bir tarayıcı gibi kapsamlı bir araç grubuna erişebilir. SAML, kullanıcının tüm bu kaynaklara tek bir dijital imza ile erişmesini sağlar.
- Daha güvenli kuruluşlarda SAML, kullanıcının yalnızca bir kapıyı açmasına veya bir bilgisayar ekranının kilidini açmasına izin verir. Kullanıcı, erişim dosyaları da dahil olmak üzere başka bir şey yapmadan önce yetkilendirilmelidir.
- SAML, ağ yöneticilerinin kullanıcıları merkezi bir konumdan yönetmesine olanak tanır.
Tipik bir SAML iş akışı aşağıdaki gibidir:
- Rica etmek: Bir talepte bulunmak için, bir kullanıcı “Giriş yap” düğmesini tıklar.
- Doğrulama: Kimlik doğrulama için SAML ve kimlik sağlayıcı bağlanır.
- Giriş yapmak: Kullanıcının kullanıcı adı ve şifresinin istendiği bir ekran gelir.
- Belirteç üretimi: Kullanıcı geçerli bilgiler girerse, kullanıcının sunucuda oturum açmasını sağlayan bir SAML belirteci oluşturulur ve hizmet sağlayıcıya gönderilir.
Bu iş akışı, bir hizmet sağlayıcının, bir tarayıcının ve bir kimlik sağlayıcının gerçek zamanlı olarak veri alışverişi yapmasına olanak tanır. Bu işlem genellikle saniyeler içinde tamamlandığı için kullanıcı gecikmenin farkında olmayabilir.
OAuth nedir?
OAuth, uygulamalara “güvenli belirlenmiş erişim” sağlayan açık standart bir yetkilendirme protokolü veya çerçevesidir. Örneğin, Facebook’a ESPN.com’un Facebook şifrenizi ESPN’ye vermeden profilinize erişmesine veya zaman tünelinizde güncellemeler yayınlamasına izin verildiğini söyleyebilirsiniz. Bu, riski önemli ölçüde azaltır: ESPN güvenliği ihlal edilse bile, Facebook şifreniz güvende kalır.
OAuth parola bilgilerini paylaşmaz ve bunun yerine tüketicileri ve hizmet sağlayıcıları bağlamak için yetkilendirme belirteçlerine güvenir. OAuth, parolanızı gizli tutarken bir uygulamanın başka bir uygulamayla sizin adınıza etkileşime girmesine izin veren bir protokoldür.
.
OAuth’un Çalışması
“Auth”, kimlik doğrulama veya yetkilendirme anlamına gelse de, onu özellikle OAuth protokolünde yetkilendirme için kullanırız. Bu protokol, kullanıcının kullanıcı adını ve şifresini korurken yetkilendirmeyi bir hizmetten diğerine aktarmak için kullanılır.
Ortalama bir çalışanın iş açısından kritik uygulamaları günde 1.100 kez değiştirdiği bir ortamda, OAuth’u bir cankurtaran olarak düşünün. Çalışanlar bazen tekrar oturum açmadan bir uygulamadan diğerine geçiş yapabilmek isterler. OAuth bunu mümkün kılar.
Google hesabı olan bir çalışanın durumunu düşünün. Bu kişi, aşağıdaki verilere erişmek için aynı kimlik bilgilerini kullanabilir:
- Sıcak Kavanoz
- Microsoft 365
- Hootsuite
- Marketo
- Anket maymun
- Kutu
- Satış ekibi
Bu web tabanlı programların tamamı çalışanın işini doğru yapabilmesi için gereklidir. Öte yandan, beş farklı kullanıcı adı ve parola grubu oluşturma (ve hatırlama) olasılığı aynı kişiyi utandırabilir.
Yinelenen kullanıcı adları ve parolalar tehlikelidir. Bir site başarısız olursa, kullanıcının hassas verileri tüm platformlarda açığa çıkar ve savunmasız hale gelir. Ancak, ilk doğrulamayı kullanarak başka bir sitede oturum açmak tamamen farklı bir hikaye.
Bazı müşteriler veri madenciliği konusunda endişeli ve böyle bir aracı kullanmanın Facebook gibi şirketlere çok fazla güç verdiğine inanıyor. Bir kullanıcı diğer uygulamalar ve siteler için Facebook girişini her seçtiğinde, Facebook daha fazla müşteri içgörüsü kazanır. Ayrıca, bir kişinin Facebook verilerinin güvenliği ihlal edilirse, ek oturum açma işlemleri de başarısız olabilir.
Tipik bir OAuth iş akışı aşağıdaki gibidir:
- Rica etmek: Bir web sayfasında, bir kullanıcı “Oturum aç” düğmesini tıklar.
- seçim: İstemci, üçüncü taraf yetkilendirme kimlik bilgilerini seçer.
- Giriş yapmak: Oturum açtığınızda, yetkilendirme sunucusu daha sonra kaynak sunucusuna gönderilen bir erişim belirteci oluşturur.
- Bağlantı: Kaynak sunucusu, belirteci doğruladıktan sonra erişim izni verir.
Bu süreç boyunca, bilgi iki sunucu arasında gidip gelir. OAuth tipik olarak belirteçler için JWT’yi kullanır, ancak JavaScript Nesne Notasyonunu da kullanabilir.
Belirteçler, nasıl oluşturulduklarına bakılmaksızın her zaman kodlanır, genellikle imzalanır, ancak sunucudan sunucuya seyahat ederken nadiren şifrelenir.
Becerilerinizi Yükseltin: Etik Bilgisayar Korsanlığı Eğitimimize Bugün Kaydolun!
SAML ve OAuth arasındaki farklar
SAML ile OAuth’u karşılaştırırken, farklı görevler için aşağıdaki iki araç kullanılır:
SAML Kimlik Doğrulaması: Bu prosedür, kullanıcının tanımlanmasını gerektirir. SAML, bir giriş anahtarına benzer şekilde çalışır. Tesise erişmenizi sağlar.
OAuth Yetkilendirmesi: Bir kullanıcının izinlerini içeren bir prosedürdür. OAuth, bir kişinin evde neleri yapıp neleri yapamayacağını yöneten ev kurallarına benzer.
SAML Kullanım Örneği: Tek Oturum Açma için SAML, XML işlemenin yaygın olduğu (kimlik yönetimi) devlet ve kurumsal uygulamalarda yaygın olarak kullanılır. SAML, birçok devlet vatandaş kimliği programında kullanılır (örneğin, UK Verify).
Bu protokol, kullanıcıların merkezi bir konumdan yönetilmesini sağlar. Şirketinizin bilgisayarına ve ağına bu şekilde bağlanırsınız. Ağ erişimi elde etmek için, kullanıcıların kimlik bilgilerini yalnızca bir kez girmeleri yeterlidir.
OAuth Kullanım Örneği:
OAuth 2.0, yetkilendirme ve kimlik doğrulama için kullanıcı ve kurumsal uygulamalarda yaygın olarak kullanılmaktadır. En yaygın olarak, erişim belirteçlerinin kullanılmasının süreci kolaylaştırdığı RESTful API’lerine erişim yetkisi vermek için kullanılır.
Bu protokol ayrıca oturum açma bilgilerinizi tekrar girmenize gerek kalmadan hizmetler arasında geçiş yapmak için de kullanılır. Bu, kimlik bilgilerinizi bir hizmetten diğerine aktarmanızı sağlayarak elde edilir.
OAuth’un kurumsal dünyada en yaygın kullanım durumu, Kimlik ve Erişim Yönetimi (IAM) çözümleriyle bağlantılıdır. Kullanıcıların bir uygulamayı kullanmasına izin vermek için kullanılabilir.
SAML ve OAuth arasındaki benzerlikler
Bu kimlik doğrulama yöntemlerinin her ikisi de, gereksiz kullanıcı adları ve parolalara olan ihtiyacı ortadan kaldırarak SSO’yu etkinleştirir ve kimlikleri doğrulamak ve merkezi yönetim aracılığıyla korunan kaynaklara erişim vermek için açık standartları temel alır. Basit kayıt ve yetki verilmiş kullanıcı yönetimi, BT yöneticilerine fayda sağlar. Hatta standartlar karşılıklı olarak avantajlı olabilir ve birlikte çalışabilirliği teşvik edebilir. Örneğin, kimlik doğrulama sunucuları, SAML ile güvenilen IdP’lerden yetkilendirme yetkileri almak için OAuth onay akışını kullanabilir.
SAML veya OAuth’u Ne Zaman Kullanmalısınız?
TOA, üretken çalışanlar için kritik öneme sahip SAML ve OAuth tarafından etkinleştirilir. Tam ikame değil, tamamlayıcı teknolojilerdir.
Örneğin Microsoft ortamında, OAuth yetkilendirmeyi, SAML ise kimlik doğrulamayı gerçekleştirir. Aynı zamanda hem erişim izni vermek (SAML aracılığıyla) hem de korumalı bir kaynağa erişim izni vermek (OAuth aracılığıyla) için kullanabilirsiniz.
Ayrıca bu araçların her ikisinden de kurtulabilirsiniz. Örneğin, bazı web siteleri kimlik doğrulama veya yetkilendirme gerektirmez.
Ancak, düzgün çalışması için, dijital sistemleri kullanan işletmelerin çoğu, bir tür kimlik doğrulama ve yetkilendirme sistemine ihtiyaç duyar. Kullanıcılar, günlük etkinliklerinin bir parçası olarak oturum açabilmeli ve şirketin sistemlerinde gezinebilmelidir.
Çözüm
Karşılaştırıldığında, hem SAML hem de OAuth karşılıklı olarak faydalıdır. Uygulama erişimi sağlamak için SAML’yi ve korunan bir kaynağa erişim vermek için OAuth’u kullanarak her iki protokolü de aynı anda kullanabilirsiniz. Protokol veya ikisinin birleşimiyle, bir kimlik sağlayıcı veya çoklu oturum açma (SSO) hizmeti kullanabilirsiniz.
Sormak için daha fazla sorunuz varsa, bize ulaşmaktan çekinmeyin