public async Task <GetTokensResponse> GetTokensAsync(GetTokensRequest request) { if (request.OAuthLogin == null || !request.OAuthLogin.IsValid) { request.OAuthLogin = new OAuthLogin { ClientId = _oauthClientSettings.DefaultClientId, ClientSecret = _oauthClientSettings.DefaultClientSecret, Scopes = _oauthClientSettings.DefaultScopes, GrantType = _oauthClientSettings.DefaultGrantType } } ; var tokenClient = new TokenClient(GetOAuthEndpointUri("token").AbsoluteUri, request.OAuthLogin.ClientId, request.OAuthLogin.ClientSecret); var result = await tokenClient.RequestResourceOwnerPasswordAsync(request.Username, request.Password, request.OAuthLogin.Scopes); var response = CreateTokenResponse(request, result, request.RedirectUriOnSuccess, request.RedirectUriOnFailure); return(response); }
public async Task <GetProviderTokenResponse> GetTokens(GetTokensRequest request) { return(await PostAsync <GetTokensRequest, GetProviderTokenResponse>( request, CreateUri(HydraServices.AuthService2, HydraMethods.GetTokens), expectContinue : true)); }
public bool Authorize() { authorized = false; try { APIInfoResponse apiInfoResponse = GetFleetAPI_Info(); } catch (Exception) { try { GetTokensRequest request = new GetTokensRequest { code = FLEET_REFRESH_TOKEN, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "refresh_token" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/fleet"); GetTokensResponse response = client.Post <GetTokensResponse>("oauth2/token", request); FLEET_ACCESS_TOKEN = response.access_token; } catch (Exception) { GetTokensRequest request = new GetTokensRequest { code = FLEET_AUTH_CODE, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "authorization_code" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/fleet"); GetTokensResponse response = client.Post <GetTokensResponse>("oauth2/token", request); FLEET_ACCESS_TOKEN = response.access_token; FLEET_REFRESH_TOKEN = response.refresh_token; } } try { APIInfoResponse apiInfoResponse = GetPassengerAPI_Info(); } catch (Exception) { try { GetTokensRequest request = new GetTokensRequest { code = PASSENGER_REFRESH_TOKEN, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "refresh_token" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/passenger"); GetTokensResponse response = client.Post <GetTokensResponse>("oauth2/token", request); PASSENGER_ACCESS_TOKEN = response.access_token; } catch (Exception) { GetTokensRequest request = new GetTokensRequest { code = PASSENGER_AUTH_CODE, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "authorization_code" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/passenger"); GetTokensResponse response = client.Post <GetTokensResponse>("oauth2/token", request); PASSENGER_ACCESS_TOKEN = response.access_token; PASSENGER_REFRESH_TOKEN = response.refresh_token; } } authorized = true; return(true); }
public TokensListResponse Execute(GetTokensRequest request) { var limit = request.Limit < 10 ? 10 : request.Limit; limit = request.Limit > 100 ? 100 : limit; var tokens = _gateway.GetAllTokens(limit, request.Cursor, request.Enabled); return(new TokensListResponse { Tokens = tokens, NextCursor = GetNextCursor(tokens, limit) }); }
public bool Authorize() { authorized = false; try { APIInfoResponse apiInfoResponse = GetFleetAPI_Info(); } catch (Exception) { try { GetTokensRequest request = new GetTokensRequest { code = FLEET_REFRESH_TOKEN, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "refresh_token" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/fleet"); GetTokensResponse response = client.Post<GetTokensResponse>("oauth2/token", request); FLEET_ACCESS_TOKEN = response.access_token; } catch (Exception) { GetTokensRequest request = new GetTokensRequest { code = FLEET_AUTH_CODE, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "authorization_code" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/fleet"); GetTokensResponse response = client.Post<GetTokensResponse>("oauth2/token", request); FLEET_ACCESS_TOKEN = response.access_token; FLEET_REFRESH_TOKEN = response.refresh_token; } } try { APIInfoResponse apiInfoResponse = GetPassengerAPI_Info(); } catch (Exception) { try { GetTokensRequest request = new GetTokensRequest { code = PASSENGER_REFRESH_TOKEN, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "refresh_token" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/passenger"); GetTokensResponse response = client.Post<GetTokensResponse>("oauth2/token", request); PASSENGER_ACCESS_TOKEN = response.access_token; } catch (Exception) { GetTokensRequest request = new GetTokensRequest { code = PASSENGER_AUTH_CODE, client_id = CLIENT_ID, client_secret = CLIENT_SECRET, grant_type = "authorization_code" }; JsonServiceClient client = new JsonServiceClient("https://api.tdispatch.com/passenger"); GetTokensResponse response = client.Post<GetTokensResponse>("oauth2/token", request); PASSENGER_ACCESS_TOKEN = response.access_token; PASSENGER_REFRESH_TOKEN = response.refresh_token; } } authorized = true; return true; }
public async Task GetTokensAsync(GetTokensRequest request) { await EnsureInGroupAsync(request, false); var response = await _service.GetTokensAsync(request); SendGroupResponse(response); var getUserInfoRequest = new GetUserInfoRequest { AccessToken = response.AccessToken }.LinkTo(response); await GetUserInfoAsync(getUserInfoRequest); }
/// <summary> /// Looks up a list of existing token. /// </summary> /// <param name = "type">token type</param> /// <param name = "limit">max number of records to return</param> /// <param name = "offset">optional offset to start at</param> /// <returns>token returned by the server</returns> public Task <PagedList <Token> > GetTokens( TokenType type, int limit, string offset) { var request = new GetTokensRequest { Type = type, Page = PageBuilder(limit, offset) }; return(gateway(authenticationContext()) .GetTokensAsync(request) .ToTask(response => new PagedList <Token>(response.Tokens, response.Offset))); }
/// <summary> /// Looks up a list of existing token. /// </summary> /// <param name="type">the token type</param> /// <param name="limit">the max number of records to return</param> /// <param name="offset">nullable offset to start at</param> /// <returns>the tokens in paged list</returns> public Task <PagedList <Token> > GetTokens( TokenType type, int limit, string offset) { var request = new GetTokensRequest { Type = type, Page = new Page { Limit = limit } }; if (offset != null) { request.Page.Offset = offset; } return(gateway(authenticationContext()).GetTokensAsync(request) .ToTask(response => new PagedList <Token>(response.Tokens, response.Offset))); }
public async Task <ActionResult> Login() { var formData = Request.Form; if (formData == null || !formData.HasKeys()) { return(RedirectToAction(nameof(Index))); } var request = new GetTokensRequest { Username = formData["username"], Password = formData["password"] }; var response = await _oauthClientService.GetTokensAsync(request); if (!response.IsError && !string.IsNullOrWhiteSpace(response.AccessToken) && !string.IsNullOrWhiteSpace(response.RefreshToken)) { return(RedirectToAction(nameof(Home))); } return(RedirectToAction(nameof(Index))); }
public IActionResult ListTokens([FromQuery] GetTokensRequest request) { return(Ok(_getAllTokensUseCase.Execute(request))); }
public async Task <HttpResponseMessage> GetTokensAsync(GetTokensRequest request) { var response = await _service.GetTokensAsync(request); return(Request.CreateResponse(response)); }