OAuth nedir ya da diğer bir deyişle Açık Yetkilendirme nedir sorusunun yanıtını vereceğim bu yazıdan öncelikle hepinize merhaba demek istiyorum sevgili dostlarım. Geçtiğimiz günlerde SSH nedir başlığından bir protokol tanıtmıştım sizlere ve birkaç protokol tanıtımı daha hazırladım. Bu içeriklerin hangi sırayla size geleceğini bilmiyorum ama birkaç gündür sürekli olarak protokol temelli içerik hazırladığımı belirtmeliyim. Konuyu gene kişisel sorunlarıma getirdim, özür dilerim. İsterseniz daha fazla içerikten uzaklaşmadan hep birlikte OAuth nedir sorusunun cevabına bakalım.
OAuth Nedir
OAuth, (Open Authorization) Türkçesiyle Açık Yetkilendirme ya da Açık Protokol olarak bilinen geliştiricilerin mobil, masaüstü ve web yazılımlarında iki tarafın arasında yetkilendirmeyi oluşturan açık bir protokoldür. OAuth protokolünün temel amacı iki yazılım arasında gelişen özel veri alışverişinin güvenli şekilde gerçekleşmesini sağlamaktır.
OAuth ilk olarak 2006 yılında piyasa sürülmüş bir protokol olup 2012 yılında OAuth 2.0 olarak güncellenmiştir. Doğal olarak günümüzde kullanılan protokol OAuth 2.0 sürümüdür. İnternet dünyasında popüler olarak kullanılan bu sistemi kimler kullanıyor derseniz örnek olarak Facebook, Instagram, Twitter ve Google gibi dev platformları verebilirim. OAuth nedir sorusuna bir yanıt verdiğime göre biraz daha detaylı anlatım için OAuth ne işe yarar başlığına geçiş yapmak istiyorum.
OAuth Ne İşe Yarar
OAuth nedir başlığında da örnek verdiğimiz gibi dev sosyal medya platformları tarafından da kullanılan OAuth 2.0 protokolü temel olarak şifrelerinizi korurken hesabınız ile 3. Parti Yazılımları ya da web sitelerini kullanabilmenize olanak sağlar. Örnek verecek olursak bir web sitesinde oturum açmak istiyorsunuz ve size “Facebook ile Bağlan” seçeneği sunuluyor. Böyle bir durumda OAuth 2.0 protokolü kullanılarak Facebook hesabınız ile harici bir sitede oturum açtığınızda o site sizin bilgilerini öğrenemiyor ama hesap sorunsuz şekilde açılmış oluyor.
Daha detaylı olarak açıklamak gerekirse sizin harici bir web sitesine Sosyal Medya hesabınızı kullanarak üye olmanız durumunda harici web sitesi sizin hesabınız ile ilgili hiçbir veriye ulaşamamaktadır. Standart bir üyelik biçiminde bilgilerinizi bir veritabanına aktararak bünyesinde tutmak zorundadır fakat bir sosyal medya hesabıyla bağlandığınızda sadece bu hesabı kullanma yetkisini vermiş olursunuz.
Diyeceğim odur ki bu durum sizin açınızdan herhangi bir güvenlik riski taşımamakta olup sizin bilgilerinize harici web sitesinin ulaşma imkânı yoktur. 3. Parti uygulamalara yetkilendirme işlemi yapmak oldukça basit olduğundan birçok uygulama ve web sitesinde sosyal medya aracılığı ile bağlan seçeneği bulunmaktadır. Sosyal medya hesaplarınızla bağlandığınızda bilgileriniz harici siteye geçecek korkusu duymanıza gerek olmadığı gibi bazı durumlarda bu şekilde bağlanıp harici web sitesine bilgi vermekten de kurtulabilirsiniz.
OAuth nedir sorusundan sonra OAuth ne işe yarar sorusuna da bir yanıt vermeye çalıştım. Şimdi işin kullanıcı tarafına değil de biraz teknik boyutuna değinmek istiyorum. Buradan sonrası normal bir kullanıcı için bir anlam ifade etmeyebilir bu uyarıyı da yapmak istedim.
Geliştiriciler İçin OAuth
OAuth protokolünü kullanmaya karar verdiyseniz bilmeniz gereken bazı hususlar bulunmakta sevgili dostlarım. OAuth 2.0 sürümü OAuth 1.0 sürümünü desteklemediği için bu sürümlerden hangisini kullanacağınıza önceden bir karar vermeniz gerekiyor. Burada benim önerim tabii ki OAuth 2.0 sürümünü seçmeniz olacaktır. Sonuç itibari ile daha geliştirilmiş bir protokol olduğundan ve en önemlisi daha güvenli olduğundan tercihinizi OAuth 2.0 olarak kullanmanızı öneririm. Bunun dışında dikkat edilmesi gereken bir diğer husus ise OAuth protokolünü bir kütüphane ya da istemci olarak görmemeniz gerektiğidir. Bu protokol sadece iki uygulama arasında yetkilendirme ve güvenli veri transferi sağlamak amacıyla geliştirilmiş olup tek bir amaca hizmet etmektedir.
Bu arada internet üzerinde OAuth için geliştirilmiş sunucu ve istemci kütüphaneleri bulunmaktadır tabi, bazı platformlarda çalıştığını da biliyorum ama bu konu hakkında net bir bilgim bulunmadığından gerekli mi değil mi bir şey söylemem doğru olmaz. OAuth nedir sorusuna yanıt verdiğime göre bir özet geçerek içeriği burada noktalayabilirim sanırım.
Son Söz
OAuth nedir ya da diğer bir deyişle Açık Protokol nedir sorusuna yanıt vermeye çalıştığım bu yazıda OAuth nedir sorusunun dışında OAuth ne işe yarar ve Geliştiriciler için OAuth bilgilerini vermeye çalıştım. Umarım bu yazı sizin için yararlı olmuş ve OAuth nedir sorusuna detaylı bir yanıt verebilmiştir sevgili okur. Hepinize güzel günler dilerim, hoşça ve takipte kalmayı unutmayın…