GitHubに次のアプリケーションがあり、Azure Appサービスのhttps://stratml.servicesにMicrosoft Accountとして定義されている認証を使用し、Microsoftアカウントのサインインを要求する任意の要求で展開しました。 "挑戦する"このチャレンジが発生しますが、https://stratml.services/Home/IdentityNameはコンテンツを返しません。ASP.NET Core 2とAzure App ServicesでのMicrosoft認証
私はthisとthisに従っていますが、私はEntityFrameworkを使用したくありません。後者の説明からは、私の認証方式を正しく構成するかどうかはわかりません。
この次のコードは、私のスタートクラスである:
services.AddAuthentication(options =>
{
options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = MicrosoftAccountDefaults.AuthenticationScheme;
}).AddMicrosoftAccount(microsoftOptions =>
{
microsoftOptions.ClientId = Configuration["Authentication:AppId"];
microsoftOptions.ClientSecret = Configuration["Authentication:Key"];
microsoftOptions.CallbackPath = new PathString("/.auth/login/microsoftaccount/callback");
});
アップデート:私は得ることができた最初の答えのおかげで、それは今、私のアプリケーションへのフィードバックにMicrosoftとの試みに許可しかし、私は次のことを受け取りますエラー:
InvalidOperationException: No IAuthenticationSignInHandler is configured to handle sign in for the scheme: Cookies
https://stratml.services/Home/IdentityNameを訪問し、GitHubのは、更新されています。 、ConfigureServices
方法では
をクッキーとMSAの認証サービスを追加します。
services.AddAuthentication(options =>
{
options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = MicrosoftAccountDefaults.AuthenticationScheme;
}).AddCookie(option =>
{
option.Cookie.Name = ".myAuth"; //optional setting
}).AddMicrosoftAccount(microsoftOptions =>
{
microsoftOptions.ClientId = Configuration["Authentication:AppId"];
microsoftOptions.ClientSecret = Configuration["Authentication:Key"];
});
私は本当にコールバックURLの仕組みを理解していませんが、Azureは有効なものを提供しましたが、私が提供したものが有効ではないというエラーが表示されます。そこに何らかの着陸を作り出す必要がありますか、または追加の配線を行う必要がありますか?しかし、これは私が望むものに非常に近いです。私がこのプロジェクトでAzureを好きになるほど、私はそれにコード依存を望んでいません。 –
私はちょうどいくつかのテストについて私の答えを更新しました、あなたはそれを参照することができます。 –