は、誰でも簡単に社会的アイデンティティ・サーバー4で認証ベンダー追加することができ、それは数分かかります:のIdentity Server 4
public void ConfigureServices(IServiceCollection services) {
services.AddMvc();
services.AddIdentityServer()
.AddXXX().AddYYY();
services.AddAuthentication()
.AddGoogle("Google", options => {
options.XXX = XXX;
})
.AddFacebook("Facebook", options => {
options.XXX = XXX;
});
}
その後、あなたはそれは、ASPです(クライアントアプリケーションでいくつかの設定を追加します。私たちの場合のコアコアMVC)
services.AddAuthentication(options => {
options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
})
.AddCookie()
.AddOpenIdConnect(OpenIdConnectDefaults.AuthenticationScheme, options => {
options.ZZZ = ZZZ;
});
... "ソーシャルログイン"が動作しています。
これはユーザーです。ユーザーはセキュリティで保護されたページにアクセスし、ソーシャルベンダーのボタン(たとえばGoogle、Facebook)を使用してIDPログインページにリダイレクトされ、認証されると保護されたページにリダイレクトされます。
私の挑戦は、まさにここにある - 私がIS4でホストクライアントアプリケーションでこのログインページ、およびないしたいと思います。
それはまったく可能ですか? IS4で何を設定する必要がありますか?
クライアントアプリケーションで何を変更する必要がありますか?
私の意図は、ベンダーのログインページ自体ではなく、ソーシャルベンダーボタンだけを持つページをホストすることです。 フローは次のようになります: セキュアページ(アプリケーション内)>> ソーシャルボタン付きのページにリダイレクト>> ボタンをクリックすると、ソーシャルベンダー>> 認証済みにリダイレクトされます>> セキュリティ保護されたページにリダイレクト – ZENIT
はい、これを行う必要がありますが、このシナリオではIdentityServerの場所はありません。 IdentityServerでトークンの生成を処理する場合は、ソーシャルログインにリダイレクトする前にIdentityServerを経由する必要があります。 –