private static void CreateTemporaryAccessKeyByToken(IamClient iamClient) { var createTemporaryAccessKeyByTokenRequest = new CreateTemporaryAccessKeyByTokenRequest() { Body = new CreateTemporaryAccessKeyByTokenRequestBody() { Auth = new TokenAuth() { Identity = new TokenAuthIdentity() { Methods = new List <TokenAuthIdentity.MethodsEnum>() { TokenAuthIdentity.MethodsEnum.TOKEN }, Token = new IdentityToken() { Id = "", DurationSeconds = 900 } } } } }; try { var createTemporaryAccessKeyByTokenResponse = iamClient.CreateTemporaryAccessKeyByToken(createTemporaryAccessKeyByTokenRequest); Console.WriteLine(JsonConvert.SerializeObject(createTemporaryAccessKeyByTokenResponse.Credential)); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } }
/// <summary> /// 通过token获取临时访问密钥和securitytoken /// </summary> public CreateTemporaryAccessKeyByTokenResponse CreateTemporaryAccessKeyByToken(CreateTemporaryAccessKeyByTokenRequest createTemporaryAccessKeyByTokenRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v3.0/OS-CREDENTIAL/securitytokens", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createTemporaryAccessKeyByTokenRequest); SdkResponse response = DoHttpRequest("POST", request); return(JsonUtils.DeSerialize <CreateTemporaryAccessKeyByTokenResponse>(response)); }