private static void KeystoneAssociateGroupWithProjectPermission(IamClient iamClient) { var keystoneGrantPermissionToGroupOnProjectRequest = new KeystoneAssociateGroupWithProjectPermissionRequest() { ProjectId = "", GroupId = "", RoleId = "", }; try { var keystoneGrantPermissionToGroupOnProjectResponse = iamClient.KeystoneAssociateGroupWithProjectPermission(keystoneGrantPermissionToGroupOnProjectRequest); Console.WriteLine( JsonConvert.SerializeObject(keystoneGrantPermissionToGroupOnProjectResponse.HttpStatusCode)); } 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 KeystoneAssociateGroupWithProjectPermissionResponse KeystoneAssociateGroupWithProjectPermission(KeystoneAssociateGroupWithProjectPermissionRequest keystoneAssociateGroupWithProjectPermissionRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); urlParam.Add("project_id", keystoneAssociateGroupWithProjectPermissionRequest.ProjectId.ToString()); urlParam.Add("group_id", keystoneAssociateGroupWithProjectPermissionRequest.GroupId.ToString()); urlParam.Add("role_id", keystoneAssociateGroupWithProjectPermissionRequest.RoleId.ToString()); string urlPath = HttpUtils.AddUrlPath("/v3/projects/{project_id}/groups/{group_id}/roles/{role_id}", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, keystoneAssociateGroupWithProjectPermissionRequest); SdkResponse response = DoHttpRequest("PUT", request); return(JsonUtils.DeSerializeNull <KeystoneAssociateGroupWithProjectPermissionResponse>(response)); }