OAuth nedir?
OAuth'un ne olduğunu ve hassas bilgilerden ödün vermeden uygulamalar ve hizmetler arasında erişimi yetkilendirmek için nasıl kullanıldığını öğrenin.
OAuth açıklaması
OAuth, şifreler gibi özel bilgileri ifşa etmeden bir uygulamaya veya hizmete başka bir uygulamada oturum açma yetkisi vermenizi sağlayan teknolojik bir standarttır. Daha önce "Facebook ile giriş yapılsın mı?" veya "Bu uygulamanın hesabınıza erişmesine izin verilsin mi?" gibi bir mesaj aldıysanız OAuth'u çalışırken gördünüz.
OAuth, bazen varsayıldığı gibi kimlik doğrulama değil, Open Authorization anlamına gelir. Authentication is a process that verifies your identity. OAuth kimliğinizi içerir ancak amacı, yeni bir hesap oluşturmanıza gerek kalmadan farklı uygulama ve hizmetlerle size sorunsuz bir şekilde bağlanma izni vermektir. OAuth, kimlik bilgilerinizi açıklamadan iki uygulamaya verilerinizin bir kısmını paylaşma yetkisi verme seçeneği sunarak bu basit deneyimi sağlar. Kolaylık ve güvenlik arasında bir denge kurar.
OAuth, Köprü Metni Aktarım Protokolü (HTTP) ile çalışacak şekilde tasarlanmıştır. Kimliğinizi kanıtlamak ve sizin adınıza başka bir hizmetle etkileşime girmesine izin vermek için erişim belirteçlerini kullanır. Bu ikinci hizmetin veri ihlaline uğraması durumunda, ilk hizmetteki kimlik bilgileriniz güvende kalacaktır. OAuth yaygın olarak benimsenen, açık standartlı bir protokoldür ve çoğu web sitesi ve uygulama geliştiricisi bunu kullanır.
OAuth yaygın olarak benimsenen, açık standartlı bir protokoldür ve çoğu web sitesi ve uygulama geliştiricisi bunu kullanır. Protokolün bir kısmı, üçüncü tarafın hangi verilere erişmesine izin verildiğini ve bu verilerle neler yapabileceğini belirtiyor. Bu tür sınırlamaların belirlenmesi ve genel olarak kimliklerin korunması, birçok kişinin çok sayıda hassas ve özel bilgiye erişebildiği iş senaryolarında özellikle kritik öneme sahiptir.
OAuth nasıl çalışır?
Erişim belirteçleri, OAuth'un kullanımını güvenli kılan şeydir. Erişim belirteci, kullanıcı ve belirtecin amaçlandığı kaynak hakkında bilgi içeren bir veri parçasıdır. Bir jeton ayrıca veri paylaşımına yönelik belirli kuralları da içerecektir.
Örneğin, bir fotoğraf düzenleme uygulamasıyla sosyal medya profilinizdeki fotoğrafları paylaşmak isteyebilirsiniz ancak bu uygulamanın yalnızca bazı fotoğraflarınıza erişmesini istiyorsunuz. Ayrıca doğrudan mesajlarınıza veya arkadaş listenize erişmesine de gerek yoktur. Belirteç yalnızca onayladığınız verilere erişime izin verir. Uygulamanın bu jetonu ne zaman kullanabileceğini (tek kullanım için veya yinelenen kullanımlar için olabilir) ve son kullanma tarihini belirleyen kurallar da olabilir.
OAuth süreci çoğunlukla kullanıcı için yalnızca birkaç temas noktasının bulunduğu makineler arası bir etkileşimdir. Bazı senaryolarda, yazılım tarafından arka planda sessizce işlendiğinden onay vermenize gerek olmayabilir. Bunun iki OAuth örneği, çok sayıda kullanıcı için BT sıkıntısını azaltmak amacıyla bir kimlik platformunun kaynaklar arasındaki bağlantıları yönettiği kurumsal çalışma senaryosunda veya bazı akıllı cihazlar arasındaki etkileşimlerde olabilir.
OAuth teknolojisi örnekleri
Sıkıcı bir şeyi (bu durumda birden fazla uygulamada manuel olarak hesap oluşturmayı) basitleştiren birçok teknoloji gibi OAuth da uygulama yaratıcıları tarafından neredeyse evrensel olarak benimsenmiştir. İnsanlar ve işletmeler için çok çeşitli kullanım durumları vardır.
Bir OAuth örneği vermek gerekirse, Microsoft Teams'i bir işbirliği aracı olarak kullandığınızı ve hem kuruluşunuzun içinden hem de dışından birlikte çalıştığınız kişiler hakkında daha fazla bilgiye erişmek istediğinizi varsayalım. Teams'ten ayrılmadan, insanlarla etkileşimde bulunurken onlar hakkında daha fazla bilgi edinmek için LinkedIn entegrasyonunu etkinleştirmeye karar verirsiniz. Microsoft ve LinkedIn daha sonra hesaplarınızın Microsoft kimliğinize bağlanmasına izin vermek için OAuth'u kullanır.
OAuth'u kullanan başka bir senaryo, harcamalarınızı uyarılar ve grafikler gibi görsel yardımlarla takip etmenize yardımcı olacak bir bütçeleme uygulaması indirmeniz olabilir. Uygulamanın işini yapabilmesi için bazı bankacılık verilerinize erişmesi gerekir. Banka hesabınızı uygulamaya bağlamak ve yalnızca hesap bakiyenize ve işlemlerinize erişime izin vermek için bir talep başlatabilirsiniz. Uygulama ve bankanız, OAuth'u kullanarak bu bilgi alışverişini sizin adınıza, banka oturum açma bilgilerinizi uygulamaya açıklamadan gerçekleştirir.
Başka bir OAuth örneği, GitHub kullanan bir geliştiriciyseniz ve otomatik kod incelemeleri gerçekleştirmek için hesabınızla entegre olabilecek bir üçüncü taraf uygulamasının bulunduğunu öğrenmeniz olabilir. GitHub Marketplace'e gidip uygulamayı indiriyorsunuz. Daha sonra sizden GitHub kimliğinizi kullanarak uygulamayla bağlantı kurmanıza izin vermenizi isteyecektir; bu işlem OAuth kullanılarak gerçekleştirilir. İnceleme uygulaması daha sonra her iki hizmette de oturum açmanıza gerek kalmadan kodunuza erişebilir.
OAuth 1.0 ile OAuth 2.0 arasındaki fark nedir?
Orijinal OAuth 1.0 yalnızca web siteleri için geliştirildi. OAuth 2.0 hem uygulamalar hem de web siteleri için tasarlandığından ve uygulanması daha hızlı ve daha kolay olduğundan günümüzde yaygın olarak kullanılmamaktadır. OAuth 1.0, OAuth 2.0 gibi ölçeklenmiyor ve OAuth 2.0'daki altı yetkilendirme akışına kıyasla yalnızca üç olası yetkilendirme akışına sahip.
OAuth kullanmayı planlıyorsanız en başından itibaren 2.0 sürümünü kullanmak en iyisidir. Maalesef OAuth 1.0, OAuth 2.0'a yükseltilemez. OAuth 2.0'ın, OAuth 1.0'ın radikal bir yeniden tasarımı olması amaçlanmıştı ve birçok büyük teknoloji şirketi, tasarımıyla ilgili geri bildirimde bulundu. Bir web sitesi hem OAuth 1.0 hem de OAuth 2.0'ı destekleyebilir, ancak içerik oluşturucular 2.0'ın tamamen 1.0'ın yerini almasını amaçladılar.
OAuth ile OIDC
OAuth ve Open ID Connect (OIDC) yakından ilişkili protokollerdir. Her ikisinin de bir uygulamanın kullanıcı adına başka bir uygulamanın kaynaklarına erişmesine izin vermede rol oynaması bakımından benzerdirler. Aradaki fark, OAuth'un kaynaklara erişim yetkilendirmesi için kullanılmasına karşın, OIDC'nin bir kişinin kimliğinin doğrulanması için kullanılmasıdır. Her ikisinin de ilgisiz iki uygulamanın kullanıcı verilerinden ödün vermeden bilgi paylaşmasını sağlamada oynayacakları bir rol vardır.
Kimlik sağlayıcıları genellikle OAuth 2.0 ve OIDC'yi birlikte kullanır. OIDC, OAuth 2.0'a bir kimlik katmanı ekleyerek özelliklerini geliştirmek için özel olarak geliştirildi. OIDC, OAuth 2.0 üzerine kurulduğundan OAuth 1.0 ile geriye dönük olarak uyumlu değildir.
OAuth’u kullanmaya başlarken
OAuth 2.0'ı web siteleriniz ve uygulamalarınızla kullanmak, kimlik doğrulama sürecini basitleştirerek kullanıcı veya çalışan deneyimlerinizi önemli ölçüde iyileştirebilir. Başlamak için, yerleşik güvenlikle kullanıcıları ve verileri koruyan Microsoft Entra gibi bir kimlik sağlayıcı çözümüne yatırım yapın
Microsoft Entra ID (eski adıyla Azure Active Directory), tüm OAuth 2,0 akışlarını destekler. Uygulama geliştiricileri, kurumsal ölçekte modern kimlik yeteneklerini uygulamalara entegre etmelerine yardımcı olmak için ID'yi standartlara dayalı bir kimlik doğrulama sağlayıcısı olarak kullanabilir. BT yöneticileri erişimi kontrol etmek için bunu kullanabilir.
Microsoft Güvenlik hakkında daha fazla bilgi edinin
-
Microsoft Entra’yı keşfedin
Bütünsel bir çözüm ailesiyle kimlikleri koruyun ve bulutlar arasında erişimi güvence altına alın.
-
Microsoft Entra ID (eski adıyla Azure Active Directory)
Güçlü kimlik doğrulama ve risk tabanlı, uyarlamalı erişimi kullanarak kaynak ve verilerinize erişimi koruyun.
-
Uygulamalarınıza güven kazandırın
Çalışanların ihtiyaç duydukları tüm kaynaklara tek bir kimlik bilgisi ile erişebilmesi için SSO'yu uygulayın.
-
Oturum açma deneyimlerini kolaylaştırın
Çalışanların ihtiyaç duydukları tüm kaynaklara tek bir kimlik bilgisi ile erişebilmesi için SSO'yu uygulayın.
-
Saldırılara karşı koruyun
Kuruluşunuzun kaynaklarının korunmasını geliştirmek için çok faktörlü kimlik doğrulamayı kullanın.
-
E-posta verilerine erişimi kolaylaştırmak için OAuth'u kullanın
Eski protokolleri kullanarak uygulamalara yapılan bağlantılarda kimlik doğrulamasını nasıl yapacağınızı öğrenin.
Sık Sorulan Sorular
-
OAuth, Açık Yetkilendirme anlamına gelir ve şifreler gibi özel bilgileri ifşa etmeden bir uygulamaya veya hizmete başka bir uygulamada oturum açma yetkisi vermenizi sağlayan teknolojik bir standarttır. Bir uygulama profil bilgilerinizi görmek için sizden yetki istediğinde, OAuth kullanıyor demektir.
-
OAuth, erişim belirteçlerini (kullanıcı ve belirtecin amaçlandığı kaynak hakkında bilgi içeren veri parçaları) değiş tokuş ederek çalışır. Bir uygulama veya web sitesi, bir kullanıcı hakkında diğeriyle şifrelenmiş bilgi alışverişinde bulunur ve veri paylaşımına yönelik belirli kurallar içerir. Uygulamanın bu jetonu ne zaman kullanabileceğini ve son kullanma tarihini belirleyen kurallar da olabilir. OAuth işlemi çoğunlukla kullanıcı için yalnızca birkaç temas noktasının (varsa) olduğu makineler arası bir etkileşimdir
-
Pek çok şirket, kullanıcılarının şifrelerini veya hassas verilerini ifşa etmeden üçüncü taraf uygulamalara ve web sitelerine erişimi kolaylaştırmak için OAuth'u kullanıyor. Google, Amazon, Microsoft, Facebook ve Twitter, satın alma işlemlerini basitleştirmek de dahil olmak üzere çok çeşitli amaçlarla hesapları hakkındaki bilgileri paylaşmak için bunu kullanıyor. Microsoft kimlik platformu, iş ve okul hesapları, kişisel hesaplar, sosyal hesaplar ve oyun hesaplarına ilişkin izinleri yetkilendirmek için OAuth'u kullanır.
-
OAuth ve Open ID Connect (OIDC) yakından ilişkili protokollerdir. Her ikisinin de bir uygulamanın kullanıcı adına başka bir uygulamanın kaynaklarına erişmesine izin vermede rol oynaması bakımından benzerdirler. Ancak aradaki fark, OAuth'un kaynaklara erişim yetkilendirmesi için kullanılması, OIDC'nin ise bir kişinin kimliğinin doğrulanması için kullanılmasıdır. Her ikisi de ilgisiz iki uygulamanın kullanıcı verilerinden ödün vermeden bilgi paylaşmasını sağlamada rol oynar.
-
OAuth 1.0 ile OAuth 2.0 arasında pek çok fark vardır çünkü OAuth 2.0, OAuth 1.0'ın radikal bir yeniden tasarımı olacak şekilde tasarlanmış olup onu neredeyse geçersiz kılmaktadır. OAuth 1.0 yalnızca web siteleri için geliştirildi, OAuth 2.0 ise hem uygulamalar hem de web siteleri için tasarlandı. OAuth 2.0'ın uygulanması daha hızlı ve kolaydır, ölçeklenebilir ve OAuth 1.0'ın sahip olduğu üç yetkilendirme akışına kıyasla altı olası yetkilendirme akışına sahiptir.
Microsoft 365’i takip edin