.NET 6.0でWebアプリケーションを作成しているとき、「ログインはしたいけど、登録時にメールの認証は不要」というようなサービスを作成していました。
.NET 6.0のデフォルトのIdentity(認証)にはメール認証されているユーザでしかログインできない設定になっています。
この記事では、その設定の変更方法についてご説明します。
認証ユーザのログインのみを許可する設定を解除
前述の通りデフォルトの設定では認証されたユーザしかログインできません。
//画像
そこで、Program.csの設定を次の通りに変更してあげます。
以下のコードを
builder.Services.AddDefaultIdentity<ApliUser>(options =>
{
options.SignIn.RequireConfirmedAccount = true;
options.Password.RequireNonAlphanumeric = false;
options.Password.RequiredLength = 8;
})
このように変更します。
builder.Services.AddDefaultIdentity<ApliUser>(options =>
{
//options.SignIn.RequireConfirmedAccount = true;
options.Password.RequireNonAlphanumeric = false;
options.Password.RequiredLength = 8;
})
解説
AddDefaultIdentity<ApliUser>メソッドのオプションでSignIn.RequireConfirmedAccountがあるので、そちらをコメントアウトするだけです。
falseにすると認証ユーザだけがログイン出来なくなってしまうので注意です。
以上です。ここまでお読みくださり、ありがとうございました。
コメント
This is the right blog for everyone who wants to find out about this topic. You understand so much its almost hard to argue with you (not that I personally would want toÖHaHa). You certainly put a new spin on a topic thats been written about for decades. Wonderful stuff, just great!