

# AWS Serverless Application Repository使用 的 示例AWS CLI
<a name="cli_serverlessapplicationrepository_code_examples"></a>

以下代码示例演示如何通过将 AWS Command Line Interface与 AWS Serverless Application Repository 结合使用，来执行操作和实现常见场景。

*操作是大型程序的代码摘录*，必须在上下文中运行。您可以通过操作了解如何调用单个服务函数，还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接，您可以从中找到有关如何在上下文中设置和运行代码的说明。

**Topics**
+ [操作](#actions)

## 操作
<a name="actions"></a>

### `put-application-policy`
<a name="serverlessapplicationrepository_PutApplicationPolicy_cli_topic"></a>

以下代码示例演示了如何使用 `put-application-policy`。

**AWS CLI**  
**示例 1：公开共享应用程序**  
以下 `put-application-policy` 将公开共享应用程序，让任何人都可以在 AWS Serverless Application Repository 中找到并部署您的应用程序。  

```
aws serverlessrepo put-application-policy \
    --application-id arn:aws:serverlessrepo:us-east-1:123456789012:applications/my-test-application \
    --statements Principals='*',Actions=Deploy
```
输出：  

```
{
    "Statements": [
        {
            "Actions": [
                "Deploy"
            ],
            "Principals": [
                ""
            ],
            "StatementId": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE"
        }
    ]
}
```
**示例 2：**私下共享应用程序  
以下 `put-application-policy` 将私下共享应用程序，只有特定 AWS 账户才可以在 AWS Serverless Application Repository 中找到并部署应用程序。  

```
aws serverlessrepo put-application-policy \
    --application-id arn:aws:serverlessrepo:us-east-1:123456789012:applications/my-test-application \
    --statements Principals=111111111111,222222222222,Actions=Deploy
```
输出：  

```
{
    "Statements": [
        {
            "Actions": [
                "Deploy"
            ],
            "Principals": [
                "111111111111",
                "222222222222"
            ],
            "StatementId": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE"
        }
    ]
}
```
有关更多信息，请参阅《AWS Serverless Application Repository 开发人员指南》**中的[通过控制台共享应用程序](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/serverlessrepo-how-to-publish.html#share-application)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [PutApplicationPolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/serverlessrepo/put-application-policy.html)。