public object ExecuteTokenOperation(OAuth2Client client, ITokenService tokenService, string optionalCode) { throw new NotImplementedException(); }
public Dictionary <string, string> ExecuteAuthorizeOperation(ClaimsPrincipal user, OAuth2Client client, ITokenService tokenService) { throw new NotImplementedException(); }
/// <summary> /// We need to generate a token in this flow so just issue the JWT token for the given user /// </summary> /// <returns>The authorize operation.</returns> /// <param name="user">User.</param> /// <param name="client">Client.</param> /// <param name="tokenService">TokenService.</param> public Dictionary <string, string> ExecuteAuthorizeOperation(ClaimsPrincipal user, OAuth2Client client, ITokenService tokenService) { // give the custom implementation a chance to adapt the claims var claims = tokenService.GetTokenClaims(user); // issue the token var issuedToken = TokenIssueService.IssueToken(claims, tokenService.GetTokenIssuer(), tokenService.GetTokenIssuer(), 24 * 60 * 60, client.ClientSecret); // generate the result var result = new Dictionary <string, string>(); result.Add("token_type", issuedToken.TokenType); result.Add("access_token", issuedToken.TokenValue); result.Add("expires_in", Convert.ToInt64((issuedToken.Expires - DateTime.UtcNow).TotalSeconds).ToString()); // done return(result); }
public Dictionary <string, string> ExecuteAuthorizeOperation(ClaimsPrincipal user, OAuth2Client client, ITokenService tokenService) { // generate a code var code = Guid.NewGuid().ToString().Replace("-", ""); // ask the token service to store this code in combination with this user and client request tokenService.StoreCode(user, code); // handout the code var result = new Dictionary <string, string>(); result.Add("code", code); return(result); }