Öğretici: iOS/macOS uygulamasında kayıt olduktan sonra kullanıcı oturumunu otomatik olarak açma
Şunlar için geçerlidir: iOS (Swift) macOS (Swift)
Bu öğreticide, yerel kimlik doğrulaması kullanarak bir iOS/macOS uygulamasında kaydoldıktan sonra kullanıcının otomatik olarak nasıl oturum açdığı gösterilmektedir.
Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:
- Kayıt olduktan sonra oturum açın.
- Hataları işleyin.
Önkoşullar
- iOS kullanıyorsanız, yerel kimlik doğrulamasını kullanarak örnek iOS (Swift) mobil uygulamasında kullanıcıları oturum açma sayfasındaki adımları izleyin. macOS kullanıyorsanız, yerel kimlik doğrulamasını kullanarak örnek macOS (Swift) uygulamasında kullanıcıları oturum açma'daki adımları izleyin. Bu makaleler, kiracı ayarlarınızı kullanarak yapılandırdığınız örnek uygulamaları nasıl çalıştırabileceğinizi gösterir.
- Öğretici: Yerel kimlik doğrulaması kullanarak bir iOS/macOS uygulamasında kaydolma ekleme. Bu öğreticideki adımlar, e-posta ve parolayla veya tek seferlik geçiş koduyla kaydolmanız fark etmeksizin işe yaramalıdır.
Kaydoldıktan sonra oturum açma
Sign in after sign up
, başarıyla kaydoldıktan sonra otomatik olarak oturum açma etkisine sahip olan oturum açma kullanıcı akışlarının geliştirme işlevselliğidir. SDK, geliştiricilere kaydoldıktan sonra kullanıcı adını sağlamak zorunda kalmadan veya e-posta adresini tek seferlik geçiş koduyla doğrulama olanağı sağlar.
Başarılı bir kayıttan sonra bir kullanıcıda oturum açmak için içinde döndürülen onSignUpCompleted(newState)
yeni durumdan SignInAfterSignUpState
yöntemini kullanınsignIn(delegate)
:
extension ViewController: SignUpVerifyCodeDelegate {
func onSignUpVerifyCodeError(error: MSAL.VerifyCodeError, newState: MSAL.SignUpCodeRequiredState?) {
resultTextView.text = "Error verifying code: \(error.errorDescription ?? "no description")"
}
func onSignUpCompleted(newState: SignInAfterSignUpState) {
resultTextView.text = "Signed up successfully!"
newState.signIn(delegate: self)
}
}
bir signIn(delegate)
temsilci parametresi kabul eder ve protokolde SignInAfterSignUpDelegate
gerekli yöntemleri uygulamamız gerekir.
En yaygın senaryoda, kullanıcının oturum açtığını onSignInCompleted(result)
belirten bir çağrısı alırsınız. Sonuç, öğesini almak access token
için kullanılabilir.
extension ViewController: SignInAfterSignUpDelegate {
func onSignInAfterSignUpError(error: SignInAfterSignUpError) {
resultTextView.text = "Error signing in after sign up"
}
func onSignInCompleted(result: MSAL.MSALNativeAuthUserAccountResult) {
// User successfully signed in
result.getAccessToken(delegate: self)
}
}
bir getAccessToken(delegate)
temsilci parametresi kabul eder ve protokolde CredentialsDelegate
gerekli yöntemleri uygulamamız gerekir.
En yaygın senaryoda, kullanıcının bir edindiğini belirten bir access token
çağrısı onAccessTokenRetrieveCompleted(result)
alırız.
extension ViewController: CredentialsDelegate {
func onAccessTokenRetrieveError(error: MSAL.RetrieveAccessTokenError) {
resultTextView.text = "Error retrieving access token"
}
func onAccessTokenRetrieveCompleted(result: MSALNativeAuthTokenResult) {
resultTextView.text = "Signed in. Access Token: \(result.accessToken)"
}
}
Özel talep sağlayıcısını yapılandırma
Uygulamanıza verilen belirteci bir dış sistemden talep eklemek istiyorsanız, özel talep sağlayıcısı kullanın. Özel talep sağlayıcısı, dış sistemlerden talep getirmek için dış REST API'yi çağıran özel bir kimlik doğrulama uzantısından oluşur.
Güvenlik belirteçlerinize dış sistemden talep eklemek için Özel talep sağlayıcısı yapılandırma'daki adımları izleyin.