示例#1
0
    /// <summary>
    /// Create authentication token
    /// </summary>
    /// <param name="jwt">IAuthJwtProvider</param>
    /// <param name="user">ClaimsPrincipal</param>
    /// <param name="log">ILog</param>
    public static Task <AuthResult> CreateTokenAsync(IAuthJwtProvider jwt, ClaimsPrincipal user, ILog log)
    {
        var token = jwt
                    .CreateToken(user)
                    .Audit(none: log.Msg)
                    .Switch <AuthResult>(
            some: x => new AuthResult.SignedIn(x),
            none: _ => new AuthResult.TryAgain()
            );

        return(Task.FromResult(token));
    }
 public RegistrationAppService(
     ITenantRepository tenantRepository,
     ITenantManager tenantManager,
     IDataFilter dataFilter,
     IdentityUserManager userManager,
     IAuthJwtProvider authJwtProvider,
     IDataSeeder dataSeeder)
 {
     TenantRepository = tenantRepository;
     TenantManager    = tenantManager;
     DataFilter       = dataFilter;
     UserManager      = userManager;
     AuthJwtProvider  = authJwtProvider;
     DataSeeder       = dataSeeder;
 }
示例#3
0
 public AuthAppService(IAuthJwtProvider authJwtProvider, IdentityUserManager userManager, IDataFilter dataFilter)
 {
     AuthJwtProvider = authJwtProvider;
     UserManager     = userManager;
     DataFilter      = dataFilter;
 }
示例#4
0
 public SignInModel(IAuthDataProvider auth, IAuthJwtProvider jwt, IOptions <AuthConfig> config, ILog <SignInModel> log) : base(auth, jwt, config, log)
 {
 }
示例#5
0
 /// <summary>
 /// Retrieve the user from the supplied token
 /// </summary>
 /// <param name="auth">IJwtAuthProvider</param>
 /// <param name="token">Token value</param>
 internal static Maybe <ClaimsPrincipal> GetPrincipal(IAuthJwtProvider auth, string token) =>
 auth.ValidateToken(token);