Auth modülü, kullanıcı yönetimi, grup yönetimi, kullanıcı kaydı, oturum açma ve ilgili işlevler dahil olmak üzere uygulamanız için kimlik doğrulama ve yetkilendirme sağlar. Proje oluşturulduğunda otomatik olarak kurulur.

01

Varsayılan Yönetici Kullanıcı Girişi ve Şifresi aşağıdaki gibidir:

Modül ayarları aşağıdaki şekilde yapılandırılabilir:

  • SignUp Groups : kullanıcının kaydolabileceği grupların listesini tanımlar;
  • SignUp : kullanıcıların uygulamada kaydolmasına ve hesap almasına olanak tanır;
  • Session timeout (minutes) : kullanıcı boştaysa, geçerli kullanıcı oturumunun ne kadar süre sonra sona ereceğini tanımlar; varsayılan 60 dk;
  • Failed login delay (in ms) : başarısız oturum açma denemelerinden sonraki yanıtlar için gecikme süresini tanımlar; varsayılan 0ms;
  • Email confirmation required : kullanıcının kaydı e-posta yoluyla onaylaması gerekip gerekmediğini tanımlar;
  • Signed-Up User Active : etkinse, yeni oluşturulan her Kullanıcı nesnesi için active=true ayarlayın;
  • Groups sekmesi, kullanıcı gruplarının bir listesini oluşturmaya ve yapılandırmaya izin verir;

module_auth_settings

Auth modülü kurulduktan sonra User ve User Session modelleri otomatik olarak oluşturulur. Bunları Data Design sekmesinde bulabilirsiniz. Bu modellerin varsayılan özniteliklerini yapılandırmak mümkün değildir, ancak yenilerini eklemek mümkündür.

data model

User, User Session ve Auth Module ile ilgili BP'ler

User ve User Session modelleriyle ilgili önceden kurulmuş iş süreçleri aşağıdaki gibidir:

  • User Modeli

    • DB: Delete User: User nesnesini ID göre veritabanından siler;

db_delete_user

    • DB: Update User : veritabanındaki belirli bir model nesnesinin tüm alanlarını sıfırlar ve bunları verilen değerlerle günceller ( DB: Patch User yalnızca sağlanan alanları değiştirmek ve diğerlerini olduğu gibi tutmak için kullanılmalıdır);

db_update_user

    • DB: Create User : veritabanında bir kayıt oluşturur ve User model nesnesini döndürür (girdi alanlarına göre User model nesnesi oluşturmak için Make User bloğunun kullanılmasını gerektirir);

db_create_user

    • DB: Soft Delete User Geçici Olarak DB: Delete User yaptığı gibi tüm kaydı kaldırmak yerine seçilen User modeli nesnesinin DeletedAt alanını günceller;

db_soft_delete_user

    • DB: Bulk Delete User : User modeli nesne kayıtlarını verilen IDs ( ids dizisi) toplu olarak siler; failed_ids – silinmeyecek bir dizi kullanıcı IDs ;

db_bulk_delete_user

    • DB: Patch User : Veritabanındaki User modeli nesnesinin seçili alanlarını günceller ( DB: Update User kullanılmalıdır);

db_patch_user

    • DB: Search User : Alanlarına göre veritabanında bir veya birkaç User modeli nesnesi bulur ve bunları döndürür;

db_search_user

    • DB: GetOne User : ID göre User model nesnesini bulur ve döndürür;

db_getone_user

    • Expand User : seçilen User modeli nesnesinin tüm alanlarını döndürür;

expand_user

    • Make User : User modelini giriş alanlarına göre yapar (veritabanına kayıt yapmak için DB: Create User kullanılması gerekir);

make_user

  • User Session

    • DB: Delete User Session : ID göre User Session nesnesini veritabanından siler;

db_delete_user_session

    • DB: Update User Session : veritabanındaki belirli bir model nesnesinin tüm alanlarını sıfırlar ve bunları verilen değerlerle günceller ( DB: Patch User Session yalnızca sağlanan alanları değiştirmek için kullanılmalıdır);

db_update_user_session

    • DB: Create User Session : veritabanında bir kayıt oluşturur ve User Session model nesnesini döndürür (giriş alanlarına göre User modeli nesnesi oluşturmak için Make User Session bloğunun kullanılmasını gerektirir);

db_create_user_session

    • DB: Soft Delete User Session : seçilen User Session model nesnesinin DeletedAt alanını günceller;

db_soft_delete_user_session

    • DB: Bulk Delete User Session : User Session modeli nesne kayıtlarını verilen IDs ( ids dizisi) toplu olarak siler; failed_ids dizisi, silme işleminden yok sayılacak olan IDs kümesini tanımlar;

db_bulk_delete_user_session

    • DB: Patch User Session : Veritabanındaki User Session model nesnesinin seçili alanlarını günceller ( DB: Update User Session tüm alanları sıfırlamak için kullanılmalıdır);

db_patch_user_session

    • DB: Search User Session : alanlarına göre veritabanında bir veya birkaç User Session model nesnesi bulur ve onları döndürür;

db_search_user_session

    • DB: GetOne User Session ID User Session model nesnesini bulur ve döndürür;

db_getone_user_session

    • Expand User Session : seçilen User Session model nesnesinin tüm alanlarını döndürür;

expand_user_session

    • Make User Session : User Session modelini giriş alanlarına göre yapar (veritabanında kayıt yapabilmek için DB: Create User Session kullanılması gerekir);

make_user_session

  • Auth Module

    • Auth: Generate Auth Token : verilen uzunlukta bir yetkilendirme jetonu ( Auth Token ) üretir;

auth_generate_auth_token

    • Auth: Registration : yeni bir kullanıcı kaydeder;

auth_registration

    • Auth: Authorization : belirli bir Yetkilendirme Auth Token var olup olmadığını kontrol eder ve onunla ilişkili kullanıcıyı döndürür;

auth_authorization

    • Auth: Authentification : kullanıcının oturum açma bilgilerini ve parolasını kontrol eder ve Auth Token döndürür;

auth_authentification

    • Auth: Logout : Geçerli kullanıcının oturumunu Auth Token dayalı olarak sonlandırır;

auth_logout

    • Auth: Get current user : geçerli User modeli nesnesini döndürür;

auth_get_current_user

    • Auth: Remove user from group : bir kullanıcıyı ID göre seçilen gruptan kaldırır;

auth_remove_user_from_group

    • Auth: Add user to group : ID göre bir kullanıcıyı seçili gruba ekler;

auth_add_user_to_group

    • Auth: Hash Password : şifre dizesini hash'e dönüştürür;

auth_hash_password

    • Auth: Restore Password : kullanıcının oturum açmasına göre parolayı geri yükler;

auth_restore_password

    • Auth: Change Password : kullanıcının parolasını değiştirir;

auth_change_password

    • Auth: Probe Password : şifre ve hash arasındaki ilişkiyi kontrol eder;

auth_probe_pw

Auth Module, User ve User Session endpoints

Auth Module önceden kurulmuş Endpoints ve User ve User Session modelleri, proje oluşturulduktan sonra otomatik olarak oluşturulur.

Auth Module

İstek TürüEndpointİlişkili iş süreci
/logout/Auth: Logout
/auth/Auth: Authentification
/register/Auth: Registration
/confirm/Auth: Get Current User
/user/change-password/Auth: Change Password
/user/restore-password/Auth: Restore Password
/user/profile/Auth: Get Current User

kullanıcı

İstek TürüEndpointİlişkili iş süreci
/user/:id/DB: Update User
/user/:id/DB: Delete User
/user/:id/DB: GetOne User
/user/DB: Search User
/user/:id/DB: Patch User
/user/DB: Create User

User Session

İstek TürüEndpointİlişkili iş süreci
/user-session/:id/DB: Delete User Session
/user-session/:id/DB: GetOne User Session
/user-session/DB: Search User Session

/user-session/:id/DB: Patch User Session

/user-session/DB: Create User Session

/user-session/:id/DB: Update User Session

Auth Token

Auth Token , yetkili bir kullanıcının oturum belirteci olarak kullanılıyor. Web uygulaması iş süreçlerinde Auth Token, ile etkileşim kurmak mümkündür:

  • Get Auth Token , geçerli kullanıcının oturum Auth Token Simgesini döndürür;

get_auth_token

  • Set Auth Token , geçerli kullanıcının oturum Auth Token Simgesini yeniden yazar;

set_auth_token

  • Remove Auth Token , geçerli kullanıcının oturum Auth Token Simgesini kaldırır;

remove_auth_token

Mevcut kullanıcı nasıl edinilir

1. Business logic sekmesine gidin ve Auth: Get current user bloğunu sürükleyin.

get_current_user_be

2. Endpoints sekmesine gidin ve User bölümünü genişletin. Ardından, 1. adımda oluşturulan iş süreci için bir GET türü yöntemi oluşturun. endpoint URL'si /user_current olacaktır.

get_current_user_mw

3. Web Apps sekmesine gidin ve mevcut kullanıcıyı web uygulaması iş sürecinden almak için Server request GET /user_current ile yeni bir iş süreci oluşturun.

get_current_user_fe

Was this article helpful?

AppMaster.io 101 Çarpışma Kursu

10 Modüller
2 haftalar

Nereden başlayacağınızdan emin değil misiniz? Yeni başlayanlar için hızlandırılmış kursumuzla başlayın ve AppMaster'ı A'dan Z'ye keşfedin.

Kursa Başlayın
Development it’s so easy with AppMaster!

Daha Fazla Yardıma mı ihtiyacınız var?

Herhangi bir sorunu uzmanlarımızın yardımıyla çözün. Zamandan tasarruf edin ve uygulamalarınızı oluşturmaya odaklanın.

headphones

İletişim desteği

Bize sorununuzu anlatın, size bir çözüm bulalım.

message

Topluluk Sohbeti

Soruları sohbetimizde diğer kullanıcılarla tartışın.

Topluluğa Katılın