

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 应用程序应用程序 ID 政策
<a name="applications-applicationid-policy"></a>

## URI
<a name="applications-applicationid-policy-url"></a>

`/applications/{{applicationId}}/policy`

## HTTP 方法
<a name="applications-applicationid-policy-http-methods"></a>

### GET
<a name="applications-applicationid-policyget"></a>

**操作 ID：**`GetApplicationPolicy`

检索应用程序的策略。


**路径参数**  

| Name | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| {{applicationId}} | 字符串 | True | 应用程序的 Amazon 资源名称（ARN）。 | 


**响应**  

| 状态代码 | 响应模型 | 说明 | 
| --- |--- |--- |
| 200 | ApplicationPolicy | 成功 | 
| 400 | BadRequestException | 请求中的参数之一无效。 | 
| 403 | ForbiddenException | 客户端未通过身份验证。 | 
| 404 | NotFoundException | 请求中指定的资源（例如访问策略声明）不存在。 | 
| 429 | TooManyRequestsException | 客户端每单位时间发送的请求数超过了允许的请求数。 | 
| 500 | InternalServerErrorException | 该 AWS Serverless Application Repository 服务遇到了内部错误。 | 

### PUT
<a name="applications-applicationid-policyput"></a>

**操作 ID：**`PutApplicationPolicy`

设置应用程序的权限策略。有关此操作支持的操作列表，请参阅[应用程序权限](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions)。


**路径参数**  

| Name | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| {{applicationId}} | 字符串 | True | 应用程序的 Amazon 资源名称（ARN）。 | 


**响应**  

| 状态代码 | 响应模型 | 说明 | 
| --- |--- |--- |
| 200 | ApplicationPolicy | 成功 | 
| 400 | BadRequestException | 请求中的参数之一无效。 | 
| 403 | ForbiddenException | 客户端未通过身份验证。 | 
| 404 | NotFoundException | 请求中指定的资源（例如访问策略声明）不存在。 | 
| 429 | TooManyRequestsException | 客户端每单位时间发送的请求数超过了允许的请求数。 | 
| 500 | InternalServerErrorException | 该 AWS Serverless Application Repository 服务遇到了内部错误。 | 

### OPTIONS
<a name="applications-applicationid-policyoptions"></a>


**路径参数**  

| Name | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| {{applicationId}} | 字符串 | True | 应用程序的 Amazon 资源名称（ARN）。 | 


**响应**  

| 状态代码 | 响应模型 | 说明 | 
| --- |--- |--- |
| 200 | 无 | 200 条回复 | 

## 架构
<a name="applications-applicationid-policy-schemas"></a>

### 请求正文
<a name="applications-applicationid-policy-request-examples"></a>

#### PUT 架构
<a name="applications-applicationid-policy-request-body-put-example"></a>

```
{
  "statements": [
    {
      "statementId": "string",
      "principals": [
        "string"
      ],
      "actions": [
        "string"
      ],
      "principalOrgIDs": [
        "string"
      ]
    }
  ]
}
```

### 响应正文
<a name="applications-applicationid-policy-response-examples"></a>

#### ApplicationPolicy 架构
<a name="applications-applicationid-policy-response-body-applicationpolicy-example"></a>

```
{
  "statements": [
    {
      "statementId": "string",
      "principals": [
        "string"
      ],
      "actions": [
        "string"
      ],
      "principalOrgIDs": [
        "string"
      ]
    }
  ]
}
```

#### BadRequestException 架构
<a name="applications-applicationid-policy-response-body-badrequestexception-example"></a>

```
{
  "message": "string",
  "errorCode": "string"
}
```

#### ForbiddenException 架构
<a name="applications-applicationid-policy-response-body-forbiddenexception-example"></a>

```
{
  "message": "string",
  "errorCode": "string"
}
```

#### NotFoundException 架构
<a name="applications-applicationid-policy-response-body-notfoundexception-example"></a>

```
{
  "message": "string",
  "errorCode": "string"
}
```

#### TooManyRequestsException 架构
<a name="applications-applicationid-policy-response-body-toomanyrequestsexception-example"></a>

```
{
  "message": "string",
  "errorCode": "string"
}
```

#### InternalServerErrorException 架构
<a name="applications-applicationid-policy-response-body-internalservererrorexception-example"></a>

```
{
  "message": "string",
  "errorCode": "string"
}
```

## Properties
<a name="applications-applicationid-policy-properties"></a>

### ApplicationPolicy
<a name="applications-applicationid-policy-model-applicationpolicy"></a>

应用于应用程序的政策声明。


| 属性 | Type | 必需 | 说明 | 
| --- |--- |--- |--- |
| statements | [ApplicationPolicyStatement](#applications-applicationid-policy-model-applicationpolicystatement) 类型的数组 | True | 应用于应用程序的一系列策略声明。 | 

### ApplicationPolicyStatement
<a name="applications-applicationid-policy-model-applicationpolicystatement"></a>

应用于应用程序的政策声明。


| 属性 | Type | 必需 | 说明 | 
| --- |--- |--- |--- |
| actions | string 类型的数组 | True | 有关此操作支持的操作列表，请参阅[应用程序权限](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/access-control-resource-based.html#application-permissions)。 | 
| principalOrgIDs | string 类型的数组 | False | 要与之共享应用程序的 AWS Organizations ID。 | 
| principals | string 类型的数组 | True |  IDs 要与之共享应用程序的 AWS 帐户数组，或\* 用于公开该应用程序。 | 
| statementId | 字符串 | False | 语句的唯一 ID。 | 

### BadRequestException
<a name="applications-applicationid-policy-model-badrequestexception"></a>

请求中的参数之一无效。


| 属性 | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| errorCode | 字符串 | False | 400 | 
| message | 字符串 | False | 请求中的参数之一无效。 | 

### ForbiddenException
<a name="applications-applicationid-policy-model-forbiddenexception"></a>

客户端未通过身份验证。


| 属性 | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| errorCode | 字符串 | False | 403 | 
| message | 字符串 | False | 客户端未通过身份验证。 | 

### InternalServerErrorException
<a name="applications-applicationid-policy-model-internalservererrorexception"></a>

该 AWS Serverless Application Repository 服务遇到了内部错误。


| 属性 | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| errorCode | 字符串 | False | 500 | 
| message | 字符串 | False | 该 AWS Serverless Application Repository 服务遇到了内部错误。 | 

### NotFoundException
<a name="applications-applicationid-policy-model-notfoundexception"></a>

请求中指定的资源（例如访问策略声明）不存在。


| 属性 | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| errorCode | 字符串 | False | 404 | 
| message | 字符串 | False | 请求中指定的资源（例如访问策略声明）不存在。 | 

### TooManyRequestsException
<a name="applications-applicationid-policy-model-toomanyrequestsexception"></a>

客户端每单位时间发送的请求数超过了允许的请求数。


| 属性 | Type | 必需 | 描述 | 
| --- |--- |--- |--- |
| errorCode | 字符串 | False | 429 | 
| message | 字符串 | False | 客户端每单位时间发送的请求数超过了允许的请求数。 | 

## 另请参阅
<a name="applications-applicationid-policy-see-also"></a>

有关在特定语言 AWS SDKs 和参考中使用此 API 的更多信息，请参阅以下内容：

### GetApplicationPolicy
<a name="GetApplicationPolicy-see-also"></a>
+ [AWS 命令行界面 V2](/goto/cli2/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于.NET 的 AWS 开发工具包 V4](/goto/DotNetSDKV4/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 C\+\+ 的 AWS SDK](/goto/SdkForCpp/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 Go 的 AWS SDK v2](/goto/SdkForGoV2/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 Java V2 的 AWS SDK](/goto/SdkForJavaV2/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 JavaScript V3 的 AWS 开发工具包](/goto/SdkForJavaScriptV3/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 Kotlin 的 AWS 开发工具包](/goto/SdkForKotlin/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 PHP 的 Amazon SDK V3](/goto/SdkForPHPV3/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 Python 的 Amazon SDK](/goto/boto3/serverlessrepo-2017-09-08/GetApplicationPolicy)
+ [适用于 Ruby 的 Amazon SDK V3](/goto/SdkForRubyV3/serverlessrepo-2017-09-08/GetApplicationPolicy)

### PutApplicationPolicy
<a name="PutApplicationPolicy-see-also"></a>
+ [AWS 命令行界面 V2](/goto/cli2/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于.NET 的 AWS 开发工具包 V4](/goto/DotNetSDKV4/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 C\+\+ 的 AWS SDK](/goto/SdkForCpp/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 Go 的 AWS SDK v2](/goto/SdkForGoV2/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 Java V2 的 AWS SDK](/goto/SdkForJavaV2/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 JavaScript V3 的 AWS 开发工具包](/goto/SdkForJavaScriptV3/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 Kotlin 的 AWS 开发工具包](/goto/SdkForKotlin/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 PHP 的 Amazon SDK V3](/goto/SdkForPHPV3/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 Python 的 Amazon SDK](/goto/boto3/serverlessrepo-2017-09-08/PutApplicationPolicy)
+ [适用于 Ruby 的 Amazon SDK V3](/goto/SdkForRubyV3/serverlessrepo-2017-09-08/PutApplicationPolicy)