APP授权
功能介绍
APP创建成功后,还不能访问API,如果想要访问某个环境上的API,需要将该API在该环境上授权给APP。授权成功后,APP即可访问该环境上的这个API。
调用方法
请参见如何调用API。
URI
POST /v2/{project_id}/apigw/instances/{instance_id}/app-auths
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        project_id  | 
      
        是  | 
      
        String  | 
      
        项目ID,获取方式请参见获取项目ID。  | 
     
| 
        instance_id  | 
      
        是  | 
      
        String  | 
      
        实例ID,在API网关控制台的“实例信息”中获取。  | 
     
请求参数
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        X-Auth-Token  | 
      
        是  | 
      
        String  | 
      
        用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        env_id  | 
      
        是  | 
      
        String  | 
      
        需要授权的环境编号  | 
     
| 
        app_ids  | 
      
        是  | 
      
        Array of strings  | 
      
        APP的编号列表  | 
     
| 
        api_ids  | 
      
        是  | 
      
        Array of strings  | 
      
        API的编号列表。  | 
     
响应参数
状态码: 201
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        auths  | 
      
        Array of ApiAuthRelations objects  | 
      
        API与APP的授权关系列表  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        api_id  | 
      
        String  | 
      
        API编号  | 
     
| 
        auth_result  | 
      
        AuthResult object  | 
      
        授权结果  | 
     
| 
        auth_time  | 
      
        String  | 
      
        授权时间  | 
     
| 
        id  | 
      
        String  | 
      
        授权关系编号  | 
     
| 
        app_id  | 
      
        String  | 
      
        APP编号  | 
     
| 
        auth_role  | 
      
        String  | 
      
        授权者 
 枚举值: 
  | 
     
| 
        auth_tunnel  | 
      
        String  | 
      
        授权通道类型 
 暂不支持,默认NORMAL 枚举值: 
  | 
     
| 
        auth_whitelist  | 
      
        Array of strings  | 
      
        绿色通道的白名单配置  | 
     
| 
        auth_blacklist  | 
      
        Array of strings  | 
      
        绿色通道的黑名单配置  | 
     
| 
        visit_params  | 
      
        String  | 
      
        访问参数。  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        status  | 
      
        String  | 
      
        授权结果 
 枚举值: 
  | 
     
| 
        error_msg  | 
      
        String  | 
      
        授权失败错误信息  | 
     
| 
        error_code  | 
      
        String  | 
      
        授权失败错误码  | 
     
| 
        api_name  | 
      
        String  | 
      
        授权失败的API名称  | 
     
| 
        app_name  | 
      
        String  | 
      
        授权失败的APP名称  | 
     
状态码: 400
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述  | 
     
状态码: 401
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述  | 
     
状态码: 403
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述  | 
     
状态码: 404
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述  | 
     
状态码: 500
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述  | 
     
请求示例
APP授权,将APP与API关联
{
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "app_ids" : [ "356de8eb7a8742168586e5daf5339965" ],
  "api_ids" : [ "5f918d104dc84480a75166ba99efff21" ]
}
 响应示例
状态码: 201
Created
{
  "auths" : [ {
    "api_id" : "5f918d104dc84480a75166ba99efff21",
    "auth_result" : {
      "status" : "SUCCESS"
    },
    "auth_time" : "22020-08-04T04:02:22.482227344Z",
    "id" : "dd29b33ae4394e3b924b582c6b40880b",
    "app_id" : "356de8eb7a8742168586e5daf5339965",
    "auth_role" : "PROVIDER",
    "auth_tunnel" : "NORMAL"
  } ]
}
  状态码: 400
Bad Request
{
  "error_code" : "APIG.2011",
  "error_msg" : "Invalid parameter value,parameterName:api_ids. Please refer to the support documentation"
}
  状态码: 401
Unauthorized
{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}
  状态码: 403
Forbidden
{
  "error_code" : "APIG.1005",
  "error_msg" : "No permissions to request this method"
}
  状态码: 404
Not Found
{
  "error_code" : "APIG.3004",
  "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
}
  状态码: 500
Internal Server Error
{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}
 状态码
| 
        状态码  | 
      
        描述  | 
     
|---|---|
| 
        201  | 
      
        Created  | 
     
| 
        400  | 
      
        Bad Request  | 
     
| 
        401  | 
      
        Unauthorized  | 
     
| 
        403  | 
      
        Forbidden  | 
     
| 
        404  | 
      
        Not Found  | 
     
| 
        500  | 
      
        Internal Server Error  | 
     
错误码
请参见错误码。