Kurz: Automatické přihlášení uživatele po registraci v aplikaci pro iOS/macOS
platí pro: pracovníci
(další informace)
Tento kurz ukazuje, jak se přihlásit uživatele automaticky po registraci v aplikaci pro iOS/macOS pomocí nativního ověřování.
V tomto kurzu se naučíte:
- Přihlaste se po registraci.
- Vyřešte chyby
Požadavky
- Pokud používáte iOS, postupujte podle pokynů v tématu Přihlášení uživatelů v ukázkové mobilní aplikaci pro iOS (Swift) pomocí nativního ověřování. Pokud používáte macOS, postupujte podle pokynů v Přihlášení uživatelů v ukázkové aplikaci macOS (Swift) pomocí nativního ověřování. V těchto článcích se dozvíte, jak spouštět ukázkové aplikace, které konfigurujete pomocí nastavení tenanta.
- Kurz : Přidání registrace do aplikace pro iOS/macOS pomocí nativního ověřování. Postup v tomto kurzu by měl fungovat bez ohledu na to, jestli se zaregistrujete pomocí e-mailu a hesla nebo jednorázového hesla.
Přihlášení po registraci
Sign in after sign up
je vylepšená funkce v uživatelských přihlašovacích procesech, která umožňuje automatické přihlášení po úspěšné registraci. Sada SDK poskytuje vývojářům možnost přihlásit se uživatele po registraci, aniž by museli zadat uživatelské jméno nebo ověřit e-mailovou adresu prostřednictvím jednorázového hesla.
Chcete-li přihlásit uživatele po úspěšné registraci, použijte metodu signIn(delegate)
z nového stavu SignInAfterSignUpState
, který byl vrácen v onSignUpCompleted(newState)
.
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!"
let parameters = MSALNativeAuthSignInAfterSignUpParameters()
newState.signIn(parameters: parameters, delegate: self)
}
}
signIn(parameters:delegate)
přijímá instanci MSALNativeAuthSignInAfterSignUpParameters
a parametr delegáta a musíme implementovat požadované metody v protokolu SignInAfterSignUpDelegate
.
V nejběžnějším scénáři obdržíme volání onSignInCompleted(result)
označující, že se uživatel přihlásil. Výsledek lze použít k získání access token
.
extension ViewController: SignInAfterSignUpDelegate {
func onSignInAfterSignUpError(error: SignInAfterSignUpError) {
resultTextView.text = "Error signing in after sign up"
}
func onSignInCompleted(result: MSAL.MSALNativeAuthUserAccountResult) {
// User successfully signed in
let parameters = MSALNativeAuthGetAccessTokenParameters()
result.getAccessToken(parameters: parameters, delegate: self)
}
}
getAccessToken(parameters:delegate)
přijímá instanci MSALNativeAuthGetAccessTokenParameters
a parametr delegáta a musíme implementovat požadované metody v protokolu CredentialsDelegate
.
V nejběžnějším scénáři obdržíme volání na onAccessTokenRetrieveCompleted(result)
, které označuje, že uživatel získal access token
.
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)"
}
}
Nastavení vlastního poskytovatele identitních deklarací
Pokud chcete přidat nároky z externího systému do tokenu vydaného vaší aplikaci, použijte vlastního zprostředkovatele nároků. Vlastní zprostředkovatel deklarací identity se skládá z vlastního rozšíření ověřování, které volá externí rozhraní REST API pro načtení deklarací identity z externích systémů.
Postupujte podle kroků v Konfigurace vlastního poskytovatele deklarací identity pro přidání deklarací z externího systému do tokenů zabezpečení.