Ejemplo n.º 1
0
        public CognitoUserClaimsPrincipalFactory(UserManager <TUser> userManager, IOptions <IdentityOptions> optionsAccessor)
        {
            _userManager = userManager as CognitoUserManager <TUser>;

            if (_userManager == null)
            {
                throw new ArgumentNullException("The userManager must be of type CognitoUserManager<TUser>", nameof(userManager));
            }

            if (optionsAccessor?.Value == null)
            {
                throw new ArgumentNullException(nameof(optionsAccessor));
            }

            _identityOptions = optionsAccessor.Value;
        }
        public CognitoSignInManager(UserManager <TUser> userManager,
                                    IHttpContextAccessor contextAccessor,
                                    IUserClaimsPrincipalFactory <TUser> claimsFactory,
                                    IOptions <IdentityOptions> optionsAccessor,
                                    IOptions <AWSCognitoTokenOptions> cognitoTokenOptions,
                                    ILogger <SignInManager <TUser> > logger,
                                    IAuthenticationSchemeProvider schemes,
                                    IUserConfirmation <TUser> confirmation) : base(userManager, contextAccessor, claimsFactory, optionsAccessor, logger, schemes, confirmation)
        {
            if (userManager == null)
            {
                throw new ArgumentNullException(nameof(userManager));
            }
            if (claimsFactory == null)
            {
                throw new ArgumentNullException(nameof(claimsFactory));
            }

            if (userManager is CognitoUserManager <TUser> )
            {
                _userManager = userManager as CognitoUserManager <TUser>;
            }
            else
            {
                throw new ArgumentException("The userManager must be of type CognitoUserManager<TUser>", nameof(userManager));
            }

            if (claimsFactory is CognitoUserClaimsPrincipalFactory <TUser> )
            {
                _claimsFactory = claimsFactory as CognitoUserClaimsPrincipalFactory <TUser>;
            }
            else
            {
                throw new ArgumentException("The claimsFactory must be of type CognitoUserClaimsPrincipalFactory<TUser>", nameof(claimsFactory));
            }

            _contextAccessor = contextAccessor ?? throw new ArgumentNullException(nameof(contextAccessor));

            _allowTokenRefresh = cognitoTokenOptions.Value.AllowTokenRefresh;
        }