

# AWS Serverless Application Repository examples using AWS CLI
<a name="cli_serverlessapplicationrepository_code_examples"></a>

次のコード例では、AWS Serverless Application Repository で AWS Command Line Interface を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています。

*アクション*はより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。

各例には完全なソースコードへのリンクが含まれており、コードの設定方法と実行方法に関する手順を確認できます。

**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)」を参照してください。