{"base_path":null,"components":null,"consumes":"[\"application/json\"]","definitions":{"AuthorizeObsPolicyStatement":{"description":"OBS桶存放的策略内容。","properties":{"action":{"description":"可以进行操作的权限合集。","example":["obs:object:PutObject"],"items":{"maxLength":128,"minLength":1,"type":"string"},"maxItems":20,"minItems":1,"readOnly":true,"type":"array"},"effect":{"$ref":"#/definitions/PolicyEffectEnum","description":"策略操作类型。","readOnly":true},"resource":{"description":"允许访问的资源。","example":["obs:*:*:object:app_warehouse/abc/*"],"items":{"maxLength":128,"minLength":1,"type":"string"},"maxItems":20,"minItems":1,"readOnly":true,"type":"array"}},"type":"object"},"AuthorizeObsReq":{"description":"获取ak/sk时候传入的文件名称(带后缀)。","properties":{"app_file_name":{"description":"应用名称,名称需满足如下规则:\n1. 文件名前缀由可见字符和空格组成,且不能为全空格。\n2. 长度范围1~255个字符。\n3. 结尾必须是`.msi`或者`.exe`或者`.zip`或者`.rar`。","example":"notepad++.exe","pattern":"^(?! +$)[\\S ]{1,251}(.exe|.msi|.zip|.rar)$","type":"string"}},"required":["app_file_name"]},"AuthorizeObsResp":{"description":"获取上传至OBS桶的ak/sk响应体。","properties":{"ak":{"description":"获取的AK。。","example":"UML**********DIP","readOnly":true,"type":"string"},"bucket_name":{"description":"存放的桶名称。","example":"wks-app-26a0420e9e284569a23f1b2f7d9b5011","readOnly":true,"type":"string"},"directory":{"description":"存放目录。","example":"file/test_file.zip","readOnly":true,"type":"string"},"expires_at":{"description":"AK/SK和securitytoken的过期时间。。","example":"2020-01-08T03:16:01.599000Z","readOnly":true,"type":"string"},"policy":{"$ref":"#/definitions/Policy","description":"ak/sk允许的访问策略。"},"security_token":{"description":"安全校验token,将所获的AK、SK等信息进行加密后的字符串。","example":"nvf**********390","readOnly":true,"type":"string"},"server_end_point":{"description":"访问的服务终端节点。","example":"obs.cn-north-xx.myhuaweicloud.com","readOnly":true,"type":"string"},"sk":{"description":"获取的SK。","example":"22q**********nvK","readOnly":true,"type":"string"}}},"BadRequestErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00211102","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The parameter is invalid.","readOnly":true,"type":"string"}}},"ForbiddenErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00081102","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"User does not have permission to access this resource.","readOnly":true,"type":"string"}}},"InternalServerErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00211401","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The requested operation failed. Please try again later.","readOnly":true,"type":"string"}}},"MethodNotAllowedErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00000405","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The method specified in the request is not allowed for this resource.","readOnly":true,"type":"string"}}},"NotFoundErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00211902","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The application does not exist","readOnly":true,"type":"string"}}},"Policy":{"description":"OBS桶存放的策略。","properties":{"statement":{"$ref":"#/definitions/AuthorizeObsPolicyStatement"},"version":{"description":"版本号。","example":"1.1","maxLength":32,"minLength":1,"type":"string"}},"type":"object"},"PolicyEffectEnum":{"description":"状态(允许、禁用):\n* `Allow` - 允许\n* `Deny` - 禁用","enum":["Allow","Deny"],"example":"Allow","type":"string"},"ServiceUnavailableErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00050902","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The service is now unavailable to process the request.","readOnly":true,"type":"string"}}},"UnauthorizedErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00211302","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"User authorization error.","readOnly":true,"type":"string"}}},"UnsupportedMediaTypeErrorResp":{"description":"API错误响应。","properties":{"error_code":{"description":"错误码,失败时返回。","example":"WKS.00000415","readOnly":true,"type":"string"},"error_msg":{"description":"错误描述。","example":"The server does not support the media type of the request payload.","readOnly":true,"type":"string"}}}},"description":null,"group_id":"fe7dbee2e20f4aa589be7dce935a38ad","host":"appstream.cn-north-4.myhuaweicloud.com","id":"0e9a828f0e7b44eb8497b65edba7ed0f","info_version":"v1","method":"post","name":"AuthorizeObs","parameters":{},"paths":{"/v1/{project_id}/app-warehouse/action/authorize":{"post":{"description":"获取上传至OBS桶的临时ak/sk。","operationId":"AuthorizeObs","parameters":[{"description":"用户Token。\n通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。","in":"header","maxLength":2147483647,"minLength":1,"name":"X-Auth-Token","required":false,"type":"string","x-example":"MIIDkgYJKoZIhvcNAQcCoIIDgzCCXXXXXX..."},{"description":"项目ID。","in":"path","maxLength":128,"minLength":1,"name":"project_id","required":true,"type":"string","x-example":"2b31ed520xxxxxxebedb6e57xxxxxxxx"},{"description":"授权给应用文件的ak/sk的请求体。","in":"body","name":"AuthorizeObsRequestBody","required":true,"schema":{"$ref":"#/definitions/AuthorizeObsReq"}}],"produces":["application/json"],"responses":{"200":{"description":"成功响应。","examples":{"application/json":{"ak":"5BJ**********30","bucket_name":"wks-app-test123456","directory":"file/Postman.exe","expires_at":"2020-01-08T03:16:01:599000Z","policy":{"statement":{"action":["obs:object:putObject","obs:object:deleteObject"],"effect":"Allow","resource":["obs:*:*:object:wks-app-test123456/file/Postman.exe"]},"version":"1.1"},"security_token":"ggp**********iwi","server_end_point":"https://obs.cn-nor***huaweicloud.com","sk":"2yB**********5gt"}},"schema":{"$ref":"#/definitions/AuthorizeObsResp"}},"400":{"description":"由于包含语法错误,当前请求无法被服务器理解。","schema":{"$ref":"#/definitions/BadRequestErrorResp"}},"401":{"description":"鉴权失败。","schema":{"$ref":"#/definitions/UnauthorizedErrorResp"}},"403":{"description":"没有操作权限。","schema":{"$ref":"#/definitions/ForbiddenErrorResp"}},"404":{"description":"找不到资源。","schema":{"$ref":"#/definitions/NotFoundErrorResp"}},"405":{"description":"请求中指定的方法不被允许。","schema":{"$ref":"#/definitions/MethodNotAllowedErrorResp"}},"415":{"description":"请求中提交的资源格式不支持。","schema":{"$ref":"#/definitions/UnsupportedMediaTypeErrorResp"}},"500":{"description":"服务内部错误,具体返回错误码请参见错误码说明。","schema":{"$ref":"#/definitions/InternalServerErrorResp"}},"503":{"description":"服务不可用。","schema":{"$ref":"#/definitions/ServiceUnavailableErrorResp"}}},"schemes":["https"],"security":[{"apig-auth-iam-used-authn5":[]}],"summary":"获取上传至OBS桶的临时ak/sk","tags":["AppWareHouse"],"x-api-type":"open-api","x-apiexplorer-hide":"N","x-apig-group":"internal,public","x-apigateway-backend":{"httpVpcEndpoints":{"description":"","method":"POST","name":"wks-appmanager-lb","path":"/v1/{project_id}/app-warehouse/action/authorize","scheme":"https","timeout":30000},"parameters":[{"description":"","in":"path","name":"project_id","origin":"request","value":"project_id"},{"description":"","in":"header","name":"X-Auth-Token","origin":"request","value":"X-Auth-Token"}],"type":"HTTP-VPC"},"x-apigateway-cors":false,"x-apigateway-match-mode":"NORMAL","x-apigateway-ratelimit":"workspace_default_operate","x-apigateway-request-type":"public","x-is-registered":"Y","x-request-examples-1":{"app_file_name":"Postman.exe"},"x-request-examples-url-1":"POST /v1/a4da8115c9d8464ead3a38309130523f/app-warehouse/action/authorize","x-support-sdk":"Y"}}},"product_short":"WorkspaceApp","region_id":"cn-north-4","schemes":["HTTPS"],"security_definitions":{"apig-auth-app":{"in":"header","name":"Authorization","type":"apiKey","x-apigateway-auth-type":"AppSigv1"},"apig-auth-iam":{"in":"header","name":"unused","type":"apiKey","x-apigateway-auth-type":"IAM"},"apig-auth-iam-used-authn5":{"in":"header","name":"unused","type":"apiKey","x-apigateway-auth-opt":{"inner-auth-type":"iam_auth_n5"},"x-apigateway-auth-type":"IAM"}},"summary":"获取上传至OBS桶的临时ak/sk","tags":"应用仓库管理","uri":null,"version":"2.0"}