OpenID Connect (OAuth 2.0) kimlik doğrulaması ile Chrome uzantınızı para kazanın
Chrome uzantınızı kullanıcı kimlik doğrulaması ekleyerek nasıl para kazanabileceğinizi öğrenin.
Chrome uzantınızı kullanıcı kimlik doğrulaması ekleyerek nasıl para kazanabileceğinizi öğrenin.
Chrome uzantıları, Chrome tarayıcısının işlevselliğini genişletmenin harika bir yoludur. Popüler bir uzantınız olduğunda, ücretli özellikler sunarak para kazanmak isteyebilirsiniz. Bu amaçla kullanıcı kimlik doğrulaması gereklidir:
Öte yandan, Google hesap sistemine bağlı kalmak istemiyoruz, çünkü kullanıcılarınız başka hesapları kullanmayı tercih edebilir veya aynı kimlik sistemine entegre etmek istediğiniz birden fazla hizmetiniz olabilir.
OpenID Connect (OIDC) kullanmanın kimlik doğrulaması için sağladığı faydaların kısa bir özeti:
Bu eğitimde, kimlik altyapıları oluşturmak için Auth0 alternatifi olan Logto OIDC sağlayıcısını kullanacağız.
Başlayalım!
Chrome uzantınızın açılır penceresine "Oturum Aç" düğmesini koyduğunuz varsayılırsa, kimlik doğrulama akışı şöyle görünecektir:
Uzantınızdaki diğer etkileşimli sayfalar için sadece Uzantı açılır penceresi katılımcısını sayfanın adıyla değiştirmeniz yeterlidir. Bu eğitimde, açılır pencere sayfasına odaklanacağız.
Başlamak için, "Tek sayfalık uygulama" türünde bir Logto uygulaması oluşturun. Bir Logto uygulaması oluşturmak için şu adımları izleyin:
Chrome uzantı projenizin içine Logto SDK'yı yükleyin:
manifest.json dosyasını güncelleyinLogto SDK, manifest.json dosyasında aşağıdaki izinlere ihtiyaç duyar:
permissions.identity: Chrome Identity API'si için gereklidir, oturum açma ve kapatma işlemlerinde kullanılır.permissions.storage: Kullanıcının oturumunu depolamak için gereklidir.host_permissions: Logto SDK'nın Logto API'leri ile iletişim kurabilmesi için gereklidir.Chrome uzantınızın arka plan komut dosyasında, Logto SDK'yı başlatın:
<your-logto-endpoint> ve <your-logto-app-id> değerlerini gerçek değerlerle değiştirin. Bu değerleri Logto Console'da oluşturduğunuz uygulama sayfasında bulabilirsiniz.
Bir arka plan komut dosyanız yoksa, bir tane oluşturmak için resmi kılavuzu izleyebilirsiniz.
Ardından, diğer uzantı sayfalarından gelen mesajları dinlememiz ve kimlik doğrulama sürecini ele almamız gerekiyor:
Yukarıdaki kodda, iki yönlendirme URI'si kullanıldığını fark edebilirsiniz. Bunlar, kimlik doğrulama akışları için bir yönlendirme URL'si oluşturmak üzere kullanılan yerleşik bir Chrome API'si olan chrome.identity.getRedirectURL ile oluşturulur. İki URI şu şekilde olacaktır:
https://<extension-id>.chromiumapp.org/callback.https://<extension-id>.chromiumapp.org/.Bu URI'lerin erişilebilir olmadığını unutmayın ve yalnızca Chrome'un kimlik doğrulama süreci için belirli eylemleri tetiklemesi için kullanılırlar.
Artık oluşturduğumuz yönlendirme URI'lerine izin vermek için Logto uygulama ayarlarını güncellememiz gerekiyor.
https://<extension-id>.chromiumapp.org/callback.https://<extension-id>.chromiumapp.org/.chrome-extension://<extension-id>. Chrome uzantısındaki SDK, Logto API'leri ile iletişim kurmak için bu kökeni kullanacaktır.<extension-id> değerini gerçek uzantı kimliğinizle değiştirmeyi unutmayın. Uzantı kimliğini chrome://extensions sayfasında bulabilirsiniz.
Ayarları güncelledikten sonra, Logto uygulama ayarlarınız şu şekilde görünmelidir:

Neredeyse bitti! Hadi açılır pencere sayfasına oturum açma ve kapatma düğmeleri ekleyelim ve gerekli diğer mantığı ekleyelim.
popup.html dosyasında:
popup.js dosyasında (popup.js'in popup.html içinde olduğunu varsayarak):
Artık Chrome uzantınızda kimlik doğrulama akışını test edebilirsiniz:
Chrome, birleşik depolama API'leri sağladığından, oturum açma ve kapatma akışı dışında, diğer tüm Logto SDK yöntemleri doğrudan açılır sayfada kullanılabilir.
popup.js'te, arka plan komut dosyasında oluşturulan LogtoClient örneğini yeniden kullanabilir veya aynı yapılandırmaya sahip yeni bir tane oluşturabilirsiniz:
Ardından, kimlik doğrulama durumunu ve kullanıcının profilini yüklemek için bir fonksiyon oluşturabilirsiniz:
Ayrıca loadAuthenticationState fonksiyonunu oturum açma ve kapatma mantığıyla birleştirebilirsiniz:
İşte kimlik doğrulama durumuyla açılır pencere sayfasının bir örneği:

SDK hakkında daha fazla bilgi için, tarayıcı SDK resmi belgelerine başvurabilirsiniz. Tarayıcı SDK'sı, Chrome uzantı SDK'sı ile aynı API'leri paylaşır.
browser veya benzeri olarak açıkça ayarlamanız gerekir.Daha eksiksiz bir örnek için TypeScript, Rollup ve diğer yapılandırmalarla ö örnek projeyi inceleyin.
Kullanıcılar doğrulandığında, artık Chrome uzantınızda güvenli bir şekilde ücretli özellikler sunabilirsiniz. Örneğin, kullanıcının abonelik durumunu kullanıcı profilinde saklayabilir ve kullanıcı uzantıyı açtığında kontrol edebilirsiniz.
Chrome uzantılarının ve Logto'nun gücünü birleştirerek, hem sizin hem de kullanıcılarınızın seveceği daha esnek ve özelleştirilebilir bir uzantı oluşturabilirsiniz.