private static void RetireGrant(KmsClient kmsClient) { try { var request = new CancelSelfGrantRequest { VersionId = "v1.0", Body = new RevokeGrantRequestBody { KeyId = GetKeyByStatus.GetKeyByKeyStatus(kmsClient, "2"), GrantId = CreateGrant(kmsClient) } }; var resp = kmsClient.CancelSelfGrant(request); Console.WriteLine(resp); } 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> /// 退役授权 /// </summary> public async Task <CancelSelfGrantResponse> CancelSelfGrantAsync(CancelSelfGrantRequest cancelSelfGrantRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); urlParam.Add("version_id", cancelSelfGrantRequest.VersionId.ToString()); string urlPath = HttpUtils.AddUrlPath("/{version_id}/{project_id}/kms/retire-grant", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", cancelSelfGrantRequest); HttpResponseMessage response = await DoHttpRequestAsync("POST", request); return(JsonUtils.DeSerializeNull <CancelSelfGrantResponse>(response)); }