
# 鉴权能否使用当前工作空间资源 - ValidateAuthorization
#### 功能介绍
鉴权能否使用当前工作空间资源接口用于验证用户是否有权限访问和使用当前工作空间中的资源。该接口适用于以下场景：当用户尝试访问或操作工作空间中的资源时，系统需要确认用户是否具有相应的权限。使用该接口的前提条件是用户已登录且工作空间已存在。鉴权成功后，用户可以正常访问和使用工作空间资源；若鉴权失败，接口将返回相应的错误信息，如用户无权限或工作空间不存在等。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=ValidateAuthorization)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
POST /v1/{project_id}/workspaces/{workspace_id}/auth
表1路径参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| workspace_id | 是    | String | **参数解释** ：工作空间ID。获取方法请参见[查询工作空间列表](https://support.huaweicloud.com/api-modelarts/ListWorkspace.html#ZH-CN_TOPIC_0000002741393737)。未创建工作空间时默认值为"0"，存在创建并使用的工作空间，以实际取值为准。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：0。 |
| project_id   | 是    | String | **参数解释** ：用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：1 - 64字符，字母、数字和中划线。 **取值范围**：不涉及。 **默认取值**：不涉及。                                             |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释** ： 调用接口的认证方式分为Token和AK/SK两种，如果您使用的Token方式，此参数为必填，请填写Token的值，获取方式请参见[获取token](https://support.huaweicloud.com/api-modelarts/modelarts_03_0004.html)。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
   
表3请求Body参数 
| 参数       | 是否必选 | 参数类型                                                                                                              | 描述                  |
|:---|:---|:---|:---|
| requests | 是    | Array of [AuthRequests] objects | **参数解释**：工作空间鉴权请求体。 |
   
 表4AuthRequests 
| 参数                 | 是否必选 | 参数类型                 | 描述                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|
| action_id          | 是    | String               | **参数解释**：随机UUID，用来定位使用。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| action             | 是    | String               | **参数解释**：细粒度action。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。     |
| resource           | 否    | String               | **参数解释**：资源。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。            |
| service_attributes | 否    | Map\<String,String\> | **参数解释**：操作对象。 **取值范围**不涉及。                                                                                                                                                                                                 |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数      | 参数类型                                                                                                                             | 描述             |
|:---|:---|:---|
| results | Array of [ValidateAuthResults] objects | **参数解释**：鉴权结果。 |
   
 表6ValidateAuthResults 
| 参数        | 参数类型                                                                                                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| action    | String                                                                                               | **参数解释**：细粒度权限。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| verdict   | String                                                                                               | **参数解释**：鉴权通过与否。 **取值范围**： - allow：通过。   - deny：不通过。    |
| action_id | String                                                                                               | **参数解释**：随机的uuid，用来定位问题使用。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| resource  | String                                                                                               | **参数解释**：请求资源。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| cause     | Array of [Cause] objects | **参数解释**：失败情况下原因。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   
 表7Cause 
| 参数          | 参数类型                                                                                                           | 描述                                                                                                        |
|:---|:---|:---|
| policy_name | String                                                                                                         | **参数解释**：策略名称。 **取值范围**：不涉及。 |
| condition   | Array of [Conditions] objects | **参数解释**：策略条件。                                                                                            |
   
 表8Conditions 
| 参数       | 参数类型             | 描述                                                                                                        |
|:---|:---|:---|
| key      | String           | **参数解释**：操作属性。 **取值范围**：不涉及。 |
| operator | String           | **参数解释**：操作符号。 **取值范围**：不涉及。 |
| value    | Array of strings | **参数解释**：操作符的值。                                                                                           |
   
#### 请求示例
鉴权当前用户是否可以在当前工作空间下执行此操作
```
POST https://{endpoint}/v1/{projectId}/workspaces/{workspaceId}/auth
{
  "requests" : [ {
    "action_id" : "cf6ad5b9_bd73_4354_b663_364348597e29",
    "action" : "modelarts:trainJob:get"
  } ]
}
```
#### 响应示例
**状态码：200**
工作空间鉴权响应体
```
{
  "results" : [ {
    "action" : "modelarts:trainJob:get",
    "verdict" : "allow",
    "action_id" : "cf6ad5b9_bd73_4354_b663_364348597e29",
    "resource" : null,
    "cause" : null
  } ]
}
```
#### 状态码
| 状态码 | 描述        |
|:---|:---|
| 200 | 工作空间鉴权响应体 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
