# 查询工作负载身份的授权配置
#### 功能介绍
查询指定工作负载身份的授权配置信息，包括授权类型和具体的授权配置（如自定义JWT配置或API Key配置）。
#### URI
GET /v1/workload-identities/{workload_identity_name}/authorizer-configuration
表1路径参数 
| 参数                     | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| workload_identity_name | 是    | String | **参数解释**： 工作负载身份名称，用于唯一标识一个工作负载身份。 **约束限制**： 不涉及。 **取值范围**： 只能由英文字母、数字及"-"、"_"组成，长度为1\~56个字符。 **默认取值**： 不涉及。 |
   
#### 请求参数
无
#### 响应参数
**状态码：200**
表2响应Body参数 
| 参数                                         | 参数类型                                                                                                                                            | 描述                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| workload_identity_authorizer_configuration | [WorkloadIdentityAuthorizerConfiguration] object | **参数解释**： 工作负载身份的授权配置信息，包含工作负载身份名称、授权类型和授权配置。 **取值范围**： 不涉及。 |
   
 表3WorkloadIdentityAuthorizerConfiguration 
| 参数                       | 参数类型                                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|
| workload_identity_name   | String                                                                                                          | **参数解释**： 工作负载身份名称，用于唯一标识一个工作负载身份。 **取值范围**： 只能由英文字母、数字及"-"、"_"组成，长度为1\~56个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| authorizer_type          | String                                                                                                          | **参数解释**： 授权类型，用于指定工作负载身份的入站请求身份验证方式。不同的授权类型对应不同的授权配置。 **取值范围**： - CUSTOM_JWT：自定义JWT授权，通过外部身份提供商的JWT令牌进行身份验证。   - IAM：IAM授权，通过华为云IAM服务进行身份验证。   - API_KEY：API Key授权，通过预置的API密钥进行身份验证。   - NONE：无授权，不进行入站请求身份验证。    |
| authorizer_configuration | [AuthorizerConfiguration] object | **参数解释**： 入站授权配置，用于定义工作负载身份如何验证入站请求的身份。根据授权类型（authorizer_type）的不同，需要配置对应的授权参数。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
   
 表4AuthorizerConfiguration 
| 参数         | 参数类型                                                                                                                              | 描述                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| custom_jwt | [CustomJWTAuthorizerConfiguration] object | **参数解释**： 自定义JWT授权配置，用于配置通过外部身份提供商签发的JWT令牌进行入站请求身份验证的参数。当authorizer_type为CUSTOM_JWT时使用此配置。 **取值范围**： 不涉及。 |
| key_auth   | [KeyAuthAuthorizerConfiguration] object     | **参数解释**： API Key授权配置，用于配置通过预置API密钥进行入站请求身份验证的参数。当authorizer_type为API_KEY时使用此配置。 **取值范围**： 不涉及。           |
   
 表5CustomJWTAuthorizerConfiguration 
| 参数               | 参数类型                                                                                                                  | 描述                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| discovery_url    | String                                                                                                                | **参数解释**： OpenID Connect发现地址（Discovery URL），用于获取身份提供商的OIDC配置信息，包括签发者地址、JWKS端点等。 **取值范围**： 必须以https://开头，且以/.well-known/openid-configuration结尾，长度为1\~2048个字符。 |
| allowed_audience | Array of strings                                                                                                      | **参数解释**： 允许的JWT受众（audience）值列表。入站JWT令牌中的aud声明必须匹配此列表中的某个值才能通过验证。 **取值范围**： 只能由英文字母、数字及"."、"_"、"-"组成，单个值长度为1\~256个字符。                                        |
| allowed_clients  | Array of strings                                                                                                      | **参数解释**： 允许的JWT客户端标识（client_id）列表。入站JWT令牌中的client_id声明必须匹配此列表中的某个值才能通过验证。 **取值范围**： 只能由英文字母、数字及"."、"_"、"-"组成，单个值长度为1\~256个字符。                               |
| allowed_scopes   | Array of strings                                                                                                      | **参数解释**： 允许的JWT scope值列表。入站JWT令牌中的scope声明必须包含此列表中的某个值才能通过验证。 **取值范围**： 只能由英文字母、数字及"."、"_"、":"、"-"组成，单个值长度为1\~256个字符。                                        |
| custom_claims    | Array of [CustomClaimValidation] objects | **参数解释**： 自定义声明（claim）验证规则列表，用于对入站JWT令牌中的自定义声明字段进行匹配验证。 **取值范围**： 不涉及。                                                                                       |
   
 表6CustomClaimValidation 
| 参数                             | 参数类型                                                                                                                  | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| authorizing_claim_match_value  | [AuthorizingClaimMatchValue] object | **参数解释**： 授权声明匹配值，定义入站JWT令牌中声明字段值与预期值之间的匹配关系。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| inbound_token_claim_name       | String                                                                                                                | **参数解释**： 需要验证的自定义声明字段名称。入站JWT令牌中必须包含此声明字段，且其值需满足匹配规则。 **取值范围**： 只能由英文字母、数字及"_"、"."、"-"、":"组成，长度为1\~255个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| inbound_token_claim_value_type | String                                                                                                                | **参数解释**： 声明字段值的数据类型，用于确定如何解析和匹配入站JWT令牌中的声明值。 **取值范围**： - STRING：字符串类型，声明值为单个字符串。   - STRING_ARRAY：字符串数组类型，声明值为字符串列表。    |
   
 表7AuthorizingClaimMatchValue 
| 参数                   | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| claim_match_operator | String                                                                                          | **参数解释**： 声明匹配操作符，定义声明字段值与匹配值之间的关系类型。 **取值范围**： - EQUALS：等于，声明值必须完全等于匹配值。   - CONTAINS：包含，声明值（字符串）必须包含匹配值。   - CONTAINS_ANY：包含任意一个，声明值（数组）中至少包含匹配值列表中的一个元素。    |
| claim_match_value    | [ClaimMatchValue] object | **参数解释**： 声明匹配值，指定用于与入站JWT令牌中声明字段值进行比对的预期值。根据声明值类型（STRING或STRING_ARRAY），使用match_value_string或match_value_string_list。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表8ClaimMatchValue 
| 参数                      | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| match_value_string      | String           | **参数解释**： 字符串类型的匹配值，当inbound_token_claim_value_type为STRING时使用。 **取值范围**： 只能由英文字母、数字及"_"、"."、"-"组成，长度为1\~255个字符。               |
| match_value_string_list | Array of strings | **参数解释**： 字符串数组类型的匹配值列表项，当inbound_token_claim_value_type为STRING_ARRAY时使用。 **取值范围**： 只能由英文字母、数字及"_"、"."、"-"组成，单个值长度为1\~255个字符。 |
   
 表9KeyAuthAuthorizerConfiguration 
| 参数       | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| api_keys | Array of [ApiKeyInfo] objects | **参数解释**： API密钥信息列表，用于配置一个或多个API密钥。在密钥轮换期间，列表中的任意一个密钥均可用于身份验证。 **取值范围**： 不涉及。 |
   
 表10ApiKeyInfo 
| 参数           | 参数类型   | 描述                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| api_key      | String | **参数解释**： API密钥值。在密钥轮换期间，列表中的任意一个密钥均可用于身份验证。如果为空，系统将自动生成一个随机字符串。 **取值范围**： 不能以空格开头或结尾，长度为1\~1024个字符。 |
| api_key_name | String | **参数解释**： API密钥名称，用于标识和区分不同的API密钥。 **取值范围**： 只能由英文字母、数字及"-"、"_"组成，长度为0\~64个字符。                       |
   
**状态码：400**
表11响应Body参数 
| 参数                            | 参数类型   | 描述                                                                                                                                                                                                                                              |
|:---|:---|:---|
| error_code                    | String | **参数解释**： 错误码。 **取值范围**： 不涉及。                         |
| error_msg                     | String | **参数解释**： 错误信息。 **取值范围**： 不涉及。                        |
| request_id                    | String | **参数解释**： 请求ID。 **取值范围**： 不涉及。                        |
| encoded_authorization_message | String | **参数解释**： 加密后的认证失败信息，可以通过STS5解密接口进行解密。 **取值范围**： 不涉及。 |
   
**状态码：404**
表12响应Body参数 
| 参数                            | 参数类型   | 描述                                                                                                                                                                                                                                              |
|:---|:---|:---|
| error_code                    | String | **参数解释**： 错误码。 **取值范围**： 不涉及。                         |
| error_msg                     | String | **参数解释**： 错误信息。 **取值范围**： 不涉及。                        |
| request_id                    | String | **参数解释**： 请求ID。 **取值范围**： 不涉及。                        |
| encoded_authorization_message | String | **参数解释**： 加密后的认证失败信息，可以通过STS5解密接口进行解密。 **取值范围**： 不涉及。 |
   
#### 请求示例
查询工作负载身份的授权配置。
```
GET https://{endpoint}/v1/workload-identities/{workload_identity_name}/authorizer-configuration
```
#### 响应示例
**状态码：200**
```
{
  "workload_identity_authorizer_configuration" : {
    "workload_identity_name" : "my_workload_identity",
    "authorizer_type" : "API_KEY",
    "authorizer_configuration" : {
      "key_auth" : {
        "api_keys" : [ {
          "api_key" : "22243eefff**",
          "api_key_name" : "test-key-1"
        }, {
          "api_key" : "22243eefff**",
          "api_key_name" : "test-key-2"
        } ]
      }
    }
  }
}
```
#### 状态码
| 状态码 | 描述        |
|:---|:---|
| 200 | 请求成功。     |
| 400 | 请求体异常。    |
| 404 | 未找到相应的资源。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-agentidentity/ErrorCode.html)。
