Aws Cognito İle Auth İşlemleri
Yakın zamanda pek haşır neşir olduğum; kimlik doğrulama ve yetkilendirme (Authentication & Authorization) işlemleri için kullanışlı ve pratik çözümler sunan bir Amazon servisidir.
Bu yazımda AWS Cognito servisini CLI ile yapılandırarak örnek kod şablonlarıyla nasıl verilere erişebileceğimizi göstermeye çalışacağım.
( Not: Gerekli güvenlik bilgilerinizi aşağıdaki dökümanı inceleyerek elde edebilirsiniz. )
İlk Aşama AWS CLI
AWS Cognito yapılandırmalarını yönetebilmemiz için AWS CLI ‘ın size uygun olan kurulumu linkten bulabilirsiniz ;
AWS CLI Konfigürasyonu
Gerekli kurumdan sonra AWS servislerini cli üzerinden yapılacak istekler için güvenlik bilgilerimizi girmemiz gerekmekte;
User Pool Oluşturma
AWS Cognito üzerinde kullanıcı dizinlerimizi oluşturarak yetki ve doğrulama işlemlerini gerçekleştireceğiz.
Bu komutun alacağı diğer parametreler şu şekildedir :
Identity Provider Ekleme
İhtiyaç duymanız halinde eklemeniz için gerekli bilgiler :
UserPool Attribute Ekleme
AWS Cognito kendi üzerinde default attribute barındırır bunların listelerini aşağıdaki linkten inceleyebilirsiniz.
Özel Attribute eklemek için ise ;
UserPool için bir Client Oluşturma
Bir UserPool oluşturduktan sonra kullanıcıların oturum açmaları için bir AppClient oluşturmamız gerekmekte bunun için ;
Bu komutun alacağı diğer parametreler şu şekildedir :
Sorgular
Cognito üzerinde bir kullancı havuzu oluşturduk , kullanıcı havuzuna bir istemci atadık, ve bu istemciyi yapılandırdık. Şimdi sırada kullanıcı havuzumuza kayıt olup token alıp bunları doğrulamak var;
İhtiyacımız olan paketler şu şekilde ;
npm install — save amazon-cognito-identity-js
npm install — save aws-sdk
npm install — save request
npm install — save jwk-to-pem
npm install — save jsonwebtoken
npm install — save node-fetch
UserPool Tanımlama
İsteklerimizin hangi kullanıcı havuzundaki hangi istemciye atacağımızı belirliyoruz.
Kullanıcı Oluşturma
Kullanıcı kaydı isteği için :
Telefon Numarası Doğrulama
Oluşturduğumuz kullanıcılardan Sms doğrulaması istersek :
Email Doğrulama
Oluşturduğumuz kullanıcılardan E-mail doğrulaması istersek :
Kullanıcı Girişi
Cognito üzerinden kullancı girişi yapmak için :
Token Doğrulama
AWS Cognito servisinin kullanımını aktarmaya çalıştım umarım bilgilendirici bulursunuz :)