华为云用户手册

  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 X-Auth-Token 是 String 管理员校验本帐号中 IAM 用户的token的有效性:拥有Security Administrator权限的token。 IAM用户校验自己token的有效性:该IAM用户的token(无需特殊权限)。 X-Subject-Token 是 String 待校验的token。
  • 响应参数 表3 响应Header参数 参数 参数类型 描述 X-Subject-Token string 已校验的token。 表4 响应Body参数 参数 参数类型 描述 token Object 获取到的token信息。 表5 token 参数 参数类型 描述 catalog Array of objects 服务目录信息。 domain Object 被校验token的IAM用户所属的帐号信息。如果获取token时请求体中scope参数设置为domain,则返回该字段。 expires_at String token过期时间。 issued_at String token下发时间。 methods Array of strings 获取token的方式。 project Object 被校验token的IAM用户所属帐号的项目信息。如果获取token时请求体中scope参数设置为project,则返回该字段。 roles Array of objects token的权限信息。 user Object 获取token的IAM用户信息。 表6 token.catalog 参数 参数类型 描述 endpoints Array of objects 终端节点。 id String 服务ID。 name String 服务名称。 type String 该接口所属服务。 表7 token.catalog.endpoints 参数 参数类型 描述 id String 终端节点ID。 interface String 接口类型,描述接口在该终端节点的可见性。值为“public”,表示该接口为公开接口。 region String 终端节点所属区域。 region_id String 终端节点所属区域ID。 url String 终端节点的URL。 表8 token.domain 参数 参数类型 描述 name String 帐号名称。 id String 帐号ID。 表9 token.project 参数 参数类型 描述 domain Object 项目所属帐号信息。 id String 项目ID。 name String 项目名称。 表10 token.project.domain 参数 参数类型 描述 id String 帐号ID。 name String 帐号名称。 表11 token.roles 参数 参数类型 描述 name String 权限名称。 id String 权限ID。默认显示为0,非真实权限ID。 表12 token.user 参数 参数类型 描述 name String IAM用户名。 id String IAM用户ID。 password_expires_at String 密码过期时间(UTC时间),“”表示密码不过期。 domain Object IAM用户所属的帐号信息。 表13 token.user.domain 参数 参数类型 描述 name String IAM用户所属帐号名称。 id String IAM用户所属帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。
  • 响应参数 表5 响应Body参数 参数 参数类型 描述 credential Object 认证信息。 表6 credential 参数 参数类型 描述 user_id String IAM用户ID。 access String 修改的AK。 status String 访问密钥状态。 create_time String 访问密钥创建时间。 description String 访问密钥描述信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段填为“application/json;charset=utf8””。 X-Auth-Token 是 String 管理员修改IAM用户的指定永久访问密钥:请参见授权项。 IAM用户修改自己的指定永久访问密钥:URL中access_key所对应IAM用户的token(无需特殊权限)。 表3 请求Body参数 参数 是否必选 参数类型 描述 credential 是 Object 认证信息。 表4 credential 参数 是否必选 参数类型 描述 status 否 String 访问密钥状态。 取值范围: active:启用 inactive:停用 description 否 String 访问密钥描述信息。
  • 请求示例 IAM用户修改自己的指定永久访问密钥状态为“不启用”。 PUT https://iam.myhuaweicloud.com/v3.0/OS-CREDENTIAL/credentials/{access_key} { "credential": { "status": "inactive", "description": "IAMDescription" }}
  • 响应示例 状态码为 200 时: 请求成功。 { "credential": { "status": "inactive", "access": "LOSZM4YRVLKOY9...", "create_time": "2020-01-08T06:26:08.123059Z", "user_id": "07609fb9358010e21f7bc00375..." }}
  • URI DELETE /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 project_id 是 String 委托方的项目ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 项目服务权限ID,获取方式请参见:获取权限ID。
  • URI HEAD /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 project_id 是 String 委托方的项目ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 项目服务权限ID,获取方式请参见:获取权限ID。
  • URI GET /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 project_id 是 String 委托方的项目ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。
  • 响应示例 状态码为 200 时: 请求成功。 { "roles": [ { "domain_id": null, "flag": "fine_grained", "description_cn": " 应用运维管理 服务只读权限", "catalog": " AOM ", "name": "system_all_30", "description": "AOM read only", "id": "75cfe22af2b3498d82b655fbb39de498", "display_name": "AOM Viewer", "type": "XA", "policy": { "Version": "1.1", "Statement": [ { "Action": [ "aom:*:list", "aom:*:get", "apm:*:list", "apm:*:get" ], "Effect": "Allow" } ] } } ]}
  • 响应示例 状态码为 201 时: 创建成功。 示例1:由被委托方B(帐号名为IAMDomainB)中的IAM用户B(用户名IAMUserB,请求头中的X-Auth-Token字段需要填写IAMUserB的用户token,且该token需要具有Agent Operator权限),获取委托方A(帐号名为IAMDomainA)创建的委托名为IAMAgency,作用范围为委托方A整个帐号的token。 示例2:由被委托方B(帐号名为IAMDomainB)中的IAM用户B(用户名IAMUserB,请求头中的X-Auth-Token字段需要填写IAMUserB的用户token,且该token需要具有Agent Operator权限),获取委托方A(帐号名为IAMDomainA)创建的委托名为IAMAgency,作用范围为委托方A的项目“cn-north-1”,且返回的响应体中将不显示catalog信息的token。 示例 1 响应Header参数:X-Subject-Token:MIIatAYJKoZIhvcNAQcCoIIapTCCGqECAQExDTALB... 响应Body参数:{ "token": { "expires_at": "2020-01-05T05:05:17.429000Z", "methods": [ "assume_role" ], "catalog": [ { "endpoints": [ { "id": "33e1cbdd86d34e89a63cf8ad16a5f49f", "interface": "public", "region": "*", "region_id": "*", "url": "https://iam.myhuaweicloud.com/v3.0" } ], "id": "100a6a3477f1495286579b819d399e36", "name": "iam", "type": "iam" } ], "domain": { "id": "d78cbac186b744899480f25bd022f468", "name": "IAMDomainA" }, "roles": [ { "id": "0", "name": "op_gated_eip_ipv6" }, { "id": "0", "name": "op_gated_rds_mcs" } ], "issued_at": "2020-01-04T05:05:17.429000Z", "user": { "domain": { "id": "d78cbac186b744899480f25bd022f468", "name": "IAMDomainA" }, "id": "0760a9e2a60026664f1fc0031f9f205e", "name": "IAMDomainA/IAMAgency" }, "assumed_by": { "user": { "domain": { "id": "a2cd82a33fb043dc9304bf72a0f38f00", "name": "IAMDomainB" }, "id": "0760a0bdee8026601f44c006524b17a9", "name": "IAMUserB", "password_expires_at": "" } } }} 示例 2 响应Header参数:X-Subject-Token:MIIatAYJKoZIhvcNAQcCoIIapTCCGqECAQExDTALB... 响应Body参数:{ "token": { "expires_at": "2020-01-05T06:49:28.094000Z", "methods": [ "assume_role" ], "catalog": [], "roles": [ { "id": "0", "name": "op_gated_eip_ipv6" }, { "id": "0", "name": "op_gated_rds_mcs" } ], "project": { "domain": { "id": "d78cbac186b744899480f25bd022f468", "name": "IAMDomainA" }, "id": "aa2d97d7e62c4b7da3ffdfc11551f878", "name": "cn-north-1" }, "issued_at": "2020-01-04T06:49:28.094000Z", "user": { "domain": { "id": "d78cbac186b744899480f25bd022f468", "name": "IAMDomainA" }, "id": "0760a9e2a60026664f1fc0031f9f205e", "name": "IAMDomainA/IAMAgency" }, "assumed_by": { "user": { "domain": { "id": "a2cd82a33fb043dc9304bf72a0f38f00", "name": "IAMDomainB" }, "id": "0760a0bdee8026601f44c006524b17a9", "name": "IAMUserB", "password_expires_at": "" } } }} 状态码为 400 时: 参数无效。 { "error": { "code": 400, "message": "The request body is invalid", "title": "Bad Request" }} 状态码为 401 时: 认证失败。 { "error": { "code": 401, "message": "The X-Auth-Token is invalid!", "title": "Unauthorized" }} 状态码为 403 时: 没有操作权限。 可能原因:被委托方B中用户B的用户token(即X-Auth-Token填写的token)缺少Agent Operator权限,请添加权限。 { "error": { "code": 403, "message": "You have no right to do this action", "title": "Forbidden" }}
  • 请求示例 由被委托方B(帐号名为IAMDomainB)中的IAM用户B(用户名IAMUserB,请求头中的X-Auth-Token字段需要填写IAMUserB的用户token,且该token需要具有Agent Operator权限),获取委托方A(帐号名为IAMDomainA)创建的委托名为IAMAgency,作用范围为委托方A的项目“cn-north-1”,且返回的响应体中将不显示catalog信息的token。 POST https://iam.myhuaweicloud.com/v3/auth/tokens?nocatalog=true { "auth": { "identity": { "methods": [ "assume_role" ], "assume_role": { "domain_name": "IAMDomainA", //委托方IAM用户A所属帐号名称 "agency_name": "IAMAgency" //委托方IAM用户A创建的委托名称 } }, "scope": { "project": { "name": "cn-north-1" //项目名称 } } }} 由被委托方B(帐号名为IAMDomainB)中的IAM用户B(用户名IAMUserB,请求头中的X-Auth-Token字段需要填写IAMUserB的用户token,且该token需要具有Agent Operator权限),获取委托方A(帐号名为IAMDomainA)创建的委托名为IAMAgency,作用范围为委托方A整个帐号的token。 POST https://iam.myhuaweicloud.com/v3/auth/tokens { "auth": { "identity": { "methods": [ "assume_role" ], "assume_role": { "domain_name": "IAMDomainA", //委托方IAM用户A所属帐号名称 "agency_name": "IAMAgency" //委托方IAM用户A创建的委托名称 } }, "scope": { "domain": { "name": "IAMDomainA" //委托方IAM用户A所属帐号名称 } } }}
  • 响应参数 表10 响应Header参数 参数 参数类型 描述 X-Subject-Token string 签名后的token。 表11 响应Body参数 参数 参数类型 描述 token Object token信息列表。 表12 token 参数 参数类型 描述 methods Array of strings 获取token的方式。 expires_at String token到期时间。格式为:YYYY-MM-DDTHH:mm:ss.ssssssZ。 issued_at String token下发时间。格式为:YYYY-MM-DDTHH:mm:ss.ssssssZ。 assumed_by Object 被委托方B的相关信息。 catalog Array of objects 服务目录信息。 domain Object 委托方A的帐号信息。如果获取token时请求体中scope参数设置为domain,则返回该字段。 project Object 委托方A的项目信息。如果获取token时请求体中scope参数设置为project,则返回该字段。 roles Array of objects 委托token的权限信息。 user Object 委托方A所创建的委托的信息。 表13 token.assumed_by 参数 参数类型 描述 user Object 被委托方B中IAM用户的用户信息。 表14 token.assumed_by.user 参数 参数类型 描述 name String 被委托方B中IAM用户的用户名。 id String 被委托方B中IAM用户的用户ID。 domain Object 被委托方B的帐号信息。 password_expires_at String 被委托方B中IAM用户的密码过期时间(UTC时间),“”表示密码不过期。 表15 token.assumed_by.user.domain 参数 参数类型 描述 name String 被委托方B的帐号名称。 id String 被委托方B的帐号ID。 表16 token.catalog 参数 参数类型 描述 endpoints Array of objects 终端节点。 id String 服务ID。 name String 服务名称。 type String 该接口所属服务。 表17 token.catalog.endpoints 参数 参数类型 描述 id String 终端节点ID。 interface String 接口类型,描述接口在该终端节点的可见性。值为“public”,表示该接口为公开接口。 region String 终端节点所属区域。 region_id String 终端节点所属区域ID。 url String 终端节点的URL。 表18 token.domain 参数 参数类型 描述 name String 委托方A的帐号名称。 id String 委托方A的帐号ID。 表19 token.project 参数 参数类型 描述 name String 委托方A的项目名称。 id String 委托方A的项目ID。 domain Object 委托方A的帐号信息。 表20 token.project.domain 参数 参数类型 描述 name String 委托方A的帐号名称。 id String 委托方A的帐号ID。 表21 token.roles 参数 参数类型 描述 name String 权限名称。 id String 权限ID。默认显示为0,非真实权限ID。 表22 token.user 参数 参数类型 描述 name String 委托方A帐号名/委托名。 id String 委托ID。 domain Object 委托方A的帐号信息。 表23 token.user.domain 参数 参数类型 描述 id String 委托方A的帐号ID。 name String 委托方A的帐号名称。
  • 功能介绍 该接口可以用于获取委托方的token。 例如:A帐号希望B帐号管理自己的某些资源,所以A帐号创建了委托给B帐号,则A帐号为委托方,B帐号为被委托方。那么B帐号可以通过该接口获取委托token。B帐号仅能使用该token管理A帐号的委托资源,不能管理自己帐号中的资源。如果B帐号需要管理自己帐号中的资源,则需要获取自己的用户token。详情请参考:委托其他帐号管理资源。 token是系统颁发给用户的访问令牌,承载用户的身份、权限等信息。调用IAM以及其他云服务的接口时,可以使用本接口获取的token进行鉴权。 该接口可以使用全局区域的Endpoint和其他区域的Endpoint调用。IAM的Endpoint请参见:地区和终端节点。 token的有效期为24小时,建议进行缓存,避免频繁调用。 使用Token前请确保Token离过期有足够的时间,防止调用API的过程中Token过期导致调用API失败。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 该字段内容填为“application/json;charset=utf8”。 X-Auth-Token 是 String 被委托方B帐号中的IAM用户token,且该token具有Agent Operator权限。 表3 请求Body参数 参数 是否必选 参数类型 描述 auth 是 Object 认证信息。 表4 auth 参数 是否必选 参数类型 描述 identity 是 Object 认证参数。 scope 是 Object token的使用范围,需要填写委托方A的project或domain,填写其中任一即可。 说明: 如果您将scope设置为domain,该Token适用于全局级服务;如果将scope设置为project,该Token适用于项目级服务。 如果您将scope同时设置为project和domain,将以project参数为准,获取到项目级服务的Token。 如果您将scope置空,将获取到全局级服务的Token。建议您按需要填写Token使用范围。 表5 auth.identity 参数 是否必选 参数类型 描述 methods 是 Array of strings token的获取方式,该字段内容为["assume_role"]。 取值范围: assume_role assume_role 是 Object assume_role的具体信息。 表6 auth.identity.assume_role 参数 是否必选 参数类型 描述 domain_id 否 String 委托方A的帐号ID。“domain_id”与“domain_name”至少填写一个,建议选择“domain_id”。 委托方A可以参考获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID获取帐号ID。 domain_name 否 String 委托方A的帐号名称。“domain_id”与“domain_name”至少填写一个,建议选择“domain_id”。 您可以在IAM控制台委托列表中查看委托方A的帐号名称。 agency_name 是 String 委托方A创建的委托名称,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 表7 auth.scope 参数 是否必选 参数类型 描述 domain 否 Object 取值为domain时,表示获取的Token可以作用于全局服务,全局服务不区分项目或区域,如OBS服务。如需了解服务作用范围,请参考系统权限。domain支持id和name,二选一即可,建议选择“domain_id”。 project 否 Object 取值为project时,表示获取的Token可以作用于项目级服务,仅能访问指定project下的资源,如E CS 服务。如需了解服务作用范围,请参考系统权限。project支持id和name,二选一即可。 表8 auth.scope.domain 参数 是否必选 参数类型 描述 id 否 String 委托方A的帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。 name 否 String 委托方A的帐号名,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。 表9 auth.scope.project 参数 是否必选 参数类型 描述 id 否 String 委托方A项目的ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。 name 否 String 委托方A项目的名称,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。
  • URI DELETE /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 domain_id 是 String 委托方帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 全局服务权限ID,获取方式请参见:获取权限ID。
  • URI HEAD /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 domain_id 是 String 委托方帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 全局服务权限ID。获取方式请参见:获取权限ID。
  • URI PUT /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 domain_id 是 String 委托方帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 全局服务权限ID,获取方式请参见:获取权限ID。
  • URI PUT /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} 表1 路径参数 参数 是否必选 参数类型 描述 agency_id 是 String 委托ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 project_id 是 String 委托方的项目ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。 role_id 是 String 项目服务权限ID,获取方式请参见:获取权限ID。
  • 安全设置 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 修改帐号操作保护策略 PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/protect-policy iam:securitypolicies:updateProtectPolicy - - 查询帐号操作保护策略 GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/protect-policy iam:securitypolicies:getProtectPolicy - - 修改帐号密码策略 PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/password-policy iam:securitypolicies:updatePasswordPolicy - - 查询帐号密码策略 GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/password-policy iam:securitypolicies:getPasswordPolicy - - 修改帐号登录策略 PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/login-policy iam:securitypolicies:updateLoginPolicy - - 查询帐号登录策略 GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/login-policy iam:securitypolicies:getLoginPolicy - - 修改帐号控制台访问策略 PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/console-acl-policy iam:securitypolicies:updateConsoleAclPolicy - - 查询帐号控制台访问策略 GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/console-acl-policy iam:securitypolicies:getConsoleAclPolicy - - 修改帐号接口访问策略 PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/api-acl-policy iam:securitypolicies:updateApiAclPolicy - - 查询帐号接口访问策略 GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/api-acl-policy iam:securitypolicies:getApiAclPolicy - -
  • 联邦身份认证管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询身份提供商列表 GET /v3/OS-FEDERATION/identity_providers iam:identityProviders:listIdentityProviders - - 查询身份提供商详情 GET /v3/OS-FEDERATION/identity_providers/{id} iam:identityProviders:getIdentityProvider - - 创建SAML身份提供商 PUT /v3/OS-FEDERATION/identity_providers/{id} iam:identityProviders:createIdentityProvider - - 修改SAML身份提供商配置 PATCH /v3/OS-FEDERATION/identity_providers/{id} iam:identityProviders:updateIdentityProvider - - 删除SAML身份提供商 DELETE /v3/OS-FEDERATION/identity_providers/{id} iam:identityProviders:deleteIdentityProvider - - 创建OIDC身份提供商 POST /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config iam:identityProviders:createOpenIDConnectConfig - - 修改OIDC身份提供商配置 PUT /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config iam:identityProviders:updateOpenIDConnectConfig - - 查询OIDC身份提供商 GET /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config iam:identityProviders:getOpenIDConnectConfig - - 查询映射列表 GET /v3/OS-FEDERATION/mappings iam:identityProviders:listMappings - - 查询映射详情 GET /v3/OS-FEDERATION/mappings/{id} iam:identityProviders:getMapping - - 注册映射 PUT /v3/OS-FEDERATION/mappings/{id} iam:identityProviders:createMapping - - 更新映射 PATCH /v3/OS-FEDERATION/mappings/{id} iam:identityProviders:updateMapping - - 删除映射 DELETE /v3/OS-FEDERATION/mappings/{id} iam:identityProviders:deleteMapping - - 查询协议列表 GET /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols iam:identityProviders:listProtocols - - 查询协议详情 GET /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id} iam:identityProviders:getProtocol - - 注册协议 PUT /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id} iam:identityProviders:createProtocol - - 更新协议 PATCH /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id} iam:identityProviders:updateProtocol - - 删除协议 DELETE /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id} iam:identityProviders:deleteProtocol - - 查询Metadata文件 GET /v3-ext/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/metadata iam:identityProviders:getIDPMetadata - - 导入Metadata文件 POST /v3-ext/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/metadata iam:identityProviders:createIDPMetadata - -
  • 企业项目管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询企业项目关联的用户组 GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups iam:permissions:listGroupsOnEnterpriseProject - √ 查询企业项目已关联用户组的权限 GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles iam:permissions:listRolesForGroupOnEnterpriseProject - √ 基于用户组为企业项目授权 PUT /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles/{role_id} iam:permissions:grantRoleToGroupOnEnterpriseProject - √ 删除企业项目关联的用户组权限 DELETE /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles/{role_id} iam:permissions:revokeRoleFromGroupOnEnterpriseProject - √ 查询用户组关联的企业项目 GET /v3.0/OS-PERMISSION/groups/{group_id}/enterprise-projects iam:permissions:listEnterpriseProjectsForGroup - √ 查询用户直接关联的企业项目 GET /v3.0/OS-PERMISSION/users/{user_id}/enterprise-projects iam:permissions:listEnterpriseProjectsForUser - √ 查询企业项目直接关联用户 GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users iam:permissions:listUsersForEnterpriseProject - √ 查询企业项目直接关联用户的角色 GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles iam:permissions:listRolesForUserOnEnterpriseProject - √ 基于用户为企业项目授权 PUT /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles/{role_id} iam:permissions:grantRoleToUserOnEnterpriseProject - √ 删除企业项目直接关联用户的权限 DELETE /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles/{role_id} iam:permissions:revokeRoleFromUserOnEnterpriseProject - √
  • 自定义策略管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询自定义策略列表 GET /v3.0/OS-ROLE/roles iam:roles:listRoles - - 查询自定义策略详情 GET /v3.0/OS-ROLE/roles/{role_id} iam:roles:getRole - - 创建云服务自定义策略 POST /v3.0/OS-ROLE/roles iam:roles:createRole - - 修改云服务自定义策略 PATCH /v3.0/OS-ROLE/roles/{role_id} iam:roles:updateRole - - 删除自定义策略 DELETE /v3.0/OS-ROLE/roles/{role_id} iam:roles:deleteRole - -
  • 委托管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 创建委托 POST /v3.0/OS-AGENCY/agencies iam:agencies:createAgency - - 查询指定条件下的委托列表 GET /v3.0/OS-AGENCY/agencies iam:agencies:listAgencies - - 查询委托详情 GET /v3.0/OS-AGENCY/agencies/{agency_id} iam:agencies:getAgency - - 修改委托 PUT /v3.0/OS-AGENCY/agencies/{agency_id} iam:agencies:updateAgency - - 删除委托 DELETE /v3.0/OS-AGENCY/agencies/{agency_id} iam:agencies:deleteAgency - - 为委托授予项目服务权限 PUT /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:grantRoleToAgencyOnProject - - 查询委托是否拥有项目服务权限 HEAD /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:checkRoleForAgencyOnProject - - 查询项目服务中的委托权限 GET /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles iam:permissions:listRolesForAgencyOnProject - - 移除委托的项目服务权限 DELETE /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:revokeRoleFromAgencyOnProject - - 为委托授予全局服务权限 PUT /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:grantRoleToAgencyOnDomain - - 查询委托是否拥有全局服务权限 HEAD /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:checkRoleForAgencyOnDomain - - 查询全局服务中的委托权限 GET /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles iam:permissions:listRolesForAgencyOnDomain - - 移除委托的全局服务权限 DELETE /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id} iam:permissions:revokeRoleFromAgencyOnDomain - - 查询委托的所有权限 GET /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/inherited_to_projects iam:permissions:listRolesForAgency - - 查询委托是否拥有指定权限 HEAD /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects iam:permissions:checkRoleForAgency - - 为委托授予指定权限 PUT /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects iam:permissions:grantRoleToAgency - - 移除委托的指定权限 DELETE /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects iam:permissions:revokeRoleFromAgency - -
  • 权限管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询权限列表 GET /v3/roles iam:roles:listRoles - - 查询权限详情 GET /v3/roles/{role_id} iam:roles:getRole - - 查询租户授权信息 GET /v3.0/OS-PERMISSION/role-assignments iam:permissions:listRoleAssignments √ √ 查询全局服务中的用户组权限 GET /v3/domains/{domain_id}/groups/{group_id}/roles iam:permissions:listRolesForGroupOnDomain - - 查询项目服务中的用户组权限 GET /v3/projects/{project_id}/groups/{group_id}/roles iam:permissions:listRolesForGroupOnProject - - 为用户组授予全局服务权限 PUT /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id} iam:permissions:grantRoleToGroupOnDomain - - 为用户组授予项目服务权限 PUT /v3/projects/{project_id}/groups/{group_id}/roles/{role_id} iam:permissions:grantRoleToGroupOnProject - - 移除用户组的项目服务权限 DELETE /v3/projects/{project_id}/groups/{group_id}/roles/{role_id} iam:permissions:revokeRoleFromGroupOnProject - - 移除用户组的全局服务权限 DELETE /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id} iam:permissions:revokeRoleFromGroupOnDomain - - 查询用户组是否拥有全局服务权限 HEAD /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id} iam:permissions:checkRoleForGroupOnDomain - - 查询用户组是否拥有项目服务权限 HEAD /v3/projects/{project_id}/groups/{group_id}/roles/{role_id} iam:permissions:checkRoleForGroupOnProject - - 为用户组授予所有项目服务权限 PUT /v3/OS-INHERIT/domains/{domain_id}/groups/{group_id}/roles/{role_id}/inherited_to_projects iam:permissions:grantRoleToGroup - - 查询用户在指定项目上拥有的权限 × iam:permissions:listRolesForUserOnProject - - 查询用户组的所有权限 × iam:permissions:listRolesForGroup - - 查询用户组是否拥有指定权限 × iam:permissions:checkRoleForGroup - - 移除用户组的指定权限 × iam:permissions:revokeRoleFromGroup - - 查询帐号授权记录 × iam:permissions:listRoleAssignments - -
  • 用户组管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询IAM用户所属用户组 GET /v3/users/{user_id}/groups iam:groups:listGroupsForUser - - 管理员查询用户组所包含的IAM用户 GET /v3/groups/{group_id}/users iam:users:listUsersForGroup - - 查询用户组列表 GET /v3/groups iam:groups:listGroups - - 查询用户组详情 GET /v3/groups/{group_id} iam:groups:getGroup - - 创建用户组 POST /v3/groups iam:groups:createGroup - - 更新用户组 PATCH /v3/groups/{group_id} iam:groups:updateGroup - - 删除用户组 DELETE /v3/groups/{group_id} iam:groups:deleteGroup iam:permissions:removeUserFromGroup iam:permissions:revokeRoleFromGroup iam:permissions:revokeRoleFromGroupOnProject iam:permissions:revokeRoleFromGroupOnDomain - - 查询用户是否在用户组中 HEAD /v3/groups/{group_id}/users/{user_id} iam:permissions:checkUserInGroup - - 添加IAM用户到用户组 PUT /v3/groups/{group_id}/users/{user_id} iam:permissions:addUserToGroup - - 移除用户组中的IAM用户 DELETE /v3/groups/{group_id}/users/{user_id} iam:permissions:removeUserFromGroup - -
  • 访问密钥管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询所有永久访问密钥 GET /v3.0/OS-CREDENTIAL/credentials iam:credentials:listCredentials - - 查询指定永久访问密钥 GET /v3.0/OS-CREDENTIAL/credentials/{access_key} iam:credentials:getCredential - - 创建永久访问密钥 POST /v3.0/OS-CREDENTIAL/credentials iam:credentials:createCredential - - 修改指定永久访问密钥 PUT /v3.0/OS-CREDENTIAL/credentials/{access_key} iam:credentials:updateCredential - - 删除指定永久访问密钥 DELETE /v3.0/OS-CREDENTIAL/credentials/{access_key} iam:credentials:deleteCredential - -
  • 虚拟MFA管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 绑定MFA设备 PUT /v3.0/OS-MFA/mfa-devices/bind iam:mfa:bindMFADevice - - 解绑MFA设备 PUT /v3.0/OS-MFA/mfa-devices/unbind iam:mfa:unbindMFADevice - - 创建虚拟MFA设备密钥 POST /v3.0/OS-MFA/virtual-mfa-devices iam:mfa:createVirtualMFADevice - - 删除MFA设备 DELETE /v3.0/OS-MFA/virtual-mfa-devices iam:mfa:deleteVirtualMFADevice - -
  • IAM用户管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 管理员查询IAM用户列表 GET /v3/users iam:users:listUsers - - 管理员创建IAM用户 POST /v3/users iam:users:createUser - - 管理员修改IAM用户信息 PATCH /v3/users/{user_id} iam:users:updateUser - - 管理员删除IAM用户 DELETE /v3/users/{user_id} iam:users:deleteUser - - 管理员创建IAM用户(推荐) POST /v3.0/OS-USER/users iam:users:createUser - - 查询用户详情(包含邮箱和手机号码) GET /v3.0/OS-USER/users/{user_id} iam:users:getUser - - 查询IAM用户详情 GET /v3/users/{user_id} iam:users:getUser - - 管理员重置IAM用户密码 × iam:users:resetUserPassword - - 设置登录保护 × iam:users:setUserLoginProtect - - 查询指定项目上有权限的用户列表 × iam:users:listUsersForProject - - 查询IAM用户的MFA绑定信息列表 GET /v3.0/OS-MFA/virtual-mfa-devices iam:mfa:listVirtualMFADevices - - 查询指定IAM用户的MFA绑定信息 GET /v3.0/OS-MFA/users/{user_id}/virtual-mfa-device iam:mfa:getVirtualMFADevice - - 查询IAM用户的登录保护状态信息列表 GET /v3.0/OS-USER/login-protects iam:users:listUserLoginProtects - - 查询指定IAM用户的登录保护状态信息 GET /v3.0/OS-USER/users/{user_id}/login-protect iam:users:getUserLoginProtect - -
  • 项目管理 权限 对应API接口 授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询项目列表 GET /v3/projects iam:projects:listProjects - - 创建项目 POST /v3/projects iam:projects:createProject - - 修改项目信息 PATCH /v3/projects/{project_id} iam:projects:updateProject - - 设置项目状态 PUT /v3-ext/projects/{project_id} iam:projects:updateProject - - 查询指定IAM用户的项目列表 GET /v3/users/{user_id}/projects iam:projects:listProjectsForUser - - 删除指定项目 × iam:projects:deleteProject - - 查询指定项目的配额 GET /v3.0/OS-QUOTA/projects/{project_id} iam:quotas:listQuotasForProject - -
共100000条