私の Web サイトのユーザーが Azure B2C で "サインアップ" プロセスを完了したことをどのように知ることができますか? オブジェクト ID の独自のリストを保存し、それに対してチェックする必要がありますか? いずれにせよそうしなければならないという気持ちはあります...
質問する
517 次
3 に答える
0
これを解決することができました...
ステップ 1 (Azure ポータル)
- Azure Portal で ADB2C に移動し、サインアップとサインイン ポリシーをクリックします。
- [アプリケーション クレーム] をクリックし、[ユーザーは新規] クレームにチェックを入れます。
「ユーザーは新規」クレームは、ユーザーがサインアップしたばかりの場合にのみ送信されます
ステップ 2 (コード)
//OpenIdConnectOptions の使用
options.Events = new OpenIdConnectEvents()
{
OnRedirectToIdentityProvider = OnRedirectToIdentityProvider,
OnRemoteFailure = OnRemoteFailure,
OnAuthorizationCodeReceived = OnAuthorizationCodeReceived,
OnAuthenticationFailed = OnAuthenticationFailed,
OnMessageReceived = OnMessageReceived,
OnRedirectToIdentityProviderForSignOut = OnRedirectToIdentityProviderForSignOut,
OnRemoteSignOut = OnRemoteSignOut,
OnSignedOutCallbackRedirect = OnSignedOutCallbackRedirect,
OnTicketReceived = _onTicketReceivedInternal,
OnTokenResponseReceived = OnTokenResponseReceived,
OnTokenValidated = OnTokenValidated,
OnUserInformationReceived = OnUserInformationReceived
};
_onTicketReceivedInternal タスクに注意してください...
private Task _onTicketReceivedInternal(TicketReceivedContext context)
{
this.OnTicketReceived(context);
//Check if new user
Claim newUserClaim = context.Principal.Claims.ToList().FirstOrDefault(x => x.Type == "newUser");
bool newUser = newUserClaim == null ? false : true;
//Trigger event
if (newUser)
this.OnSignUp(context);
return Task.FromResult(0);
}
//Custom method OnSignUp where an application can do something on user sign up
protected virtual Task OnSignUp(TicketReceivedContext context)
{
return Task.FromResult(0);
}
于 2019-05-22T06:31:11.473 に答える
0
はい、オブジェクト ID のリストを保存し、それに応じてビジネス ロジックで検証する必要があります。
于 2016-03-19T04:32:04.400 に答える