myesn

myEsn2E9

hi
github

SignInManager.SignInAsyncのパラメーターには、ログインの有効期限などが設定されています。

全局設定、すべての SignInXXXAsync メソッドに適用されます#

private void ConfigureApplicationCookie(IServiceCollection services)
{
    //// Identity ログイン Cookie の設定、例えばログインの有効期限など
    //// https://github.com/abpframework/abp/issues/4356#issuecomment-644477874
    //services.ConfigureApplicationCookie(options =>
    //{
    //    //options.AccessDeniedPath = "/Identity/Account/AccessDenied";
    //    //options.Cookie.Name = "YourAppCookieName";
    //    //options.Cookie.HttpOnly = true;
    //    options.ExpireTimeSpan = TimeSpan.FromMinutes(60);
    //    //options.LoginPath = "/Identity/Account/Login";
    //    //// ReturnUrlParameter requires 
    //    ////using Microsoft.AspNetCore.Authentication.Cookies;
    //    //options.ReturnUrlParameter = CookieAuthenticationDefaults.ReturnUrlParameter;
    //    //options.SlidingExpiration = true;
    //});
}

ログイン時の設定#

await SignInManager.SignInAsync(user, new AuthenticationProperties() 
{
    // 常にログイン状態を記憶します。記憶しない場合、ログイン状態はセッションによって維持され、ブラウザを閉じるとセッションが無効になります
    // 例えば、チェックを外した場合、有効期限は1日で、チェックをした場合は5日です
    // IsPersistent = true の場合、identity はクライアントのブラウザに cookie を送信し、有効期限を設定できます。false はセッションによって維持されることを意味し、ブラウザを閉じた後にセッションが無効になります
    IsPersistent = true, //LoginBySmsCodeInput.RememberMe,
    ExpiresUtc = DateTime.Now.AddDays(LoginBySmsCodeInput.RememberMe ? 5 : 1),
});

参考#

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。