Пример #1
0
        public AuthorizationResponseDTO GetAuthorization(AuthorizationRequestDTO authorizeDTO)
        {
            AuthorizationResponseDTO authResponseDTO = new AuthorizationResponseDTO();

            try
            {
                Authorize authorize = mapper.Map <Authorize>(authorizeDTO);
                Client    client    = oauth.Client.SingleOrDefault(x => x.Client_Id == authorizeDTO.Client_Id);
                if (client.Client_Id != authorizeDTO.Client_Id)
                {
                    throw new InvalidClientException(TokenConstants.InvalidClient);
                }
                authorize.Code = refreshtoken.GenerateToken(new TokenDTO {
                    New = true
                });
                oauth.Authorize.Add(authorize);
                oauth.SaveChanges();
                authResponseDTO.Code         = HttpUtility.UrlEncode(authorize.Code);
                authResponseDTO.State        = authorizeDTO.State;
                authResponseDTO.Redirect_Uri = authorizeDTO.Redirect_Uri;
            }
            catch
            {
            }
            return(authResponseDTO);
        }
Пример #2
0
        public IActionResult Get([FromQuery] AuthorizationRequestDTO authorizeDTO)
        {
            AuthorizationResponseDTO authResponseDTO = new AuthorizationResponseDTO();

            try
            {
                IAuthorizationService authorizationService = new AuthorizationService(
                    _refreshService,
                    _configuration,
                    _tSLogger,
                    _tokenService,
                    _tokenServiceDbContext,
                    _encryptionService);
                authResponseDTO = authorizationService.GetAuthorization(authorizeDTO);
            }
            catch (InvalidTokenException exToken)
            {
                return(Unauthorized(new UnauthorizedError(exToken.Message)));
            }
            catch (InvalidUserException exUser)
            {
                return(Unauthorized(new UnauthorizedError(exUser.Message)));
            }
            catch (Exception ex)
            {
                return(Unauthorized(new UnauthorizedError(ex.Message)));
            }
            return(Ok(authResponseDTO));
        }
Пример #3
0
        public IActionResult OnPost()
        {
            AuthorizationResponseDTO authResponseDTO      = new AuthorizationResponseDTO();
            IAuthorizationService    authorizationService = new AuthorizationService(
                refToken,
                configuration,
                itsLogger,
                jwtToken,
                OAuthDbContext,
                EncryptionService);

            authResponseDTO = authorizationService.GetAuthorization(authorizationRequestDTO);
            return(Redirect(authorizationRequestDTO.Redirect_Uri + "?code=" + HttpUtility.UrlEncode(authResponseDTO.Code) + "&state=" + authorizationRequestDTO.State));
        }