

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Snowball Edge でのローカル IAM の使用
<a name="using-local-iam"></a>

AWS Identity and Access Management (IAM) は、 AWS Snowball Edge デバイスで実行される AWS リソースへのアクセスを安全に制御するのに役立ちます。IAM により、誰を認証 (サインイン) し、誰にリソースの使用を承認する (アクセス許可を持たせる) かを制御します。

IAM は、デバイスでローカルにサポートされています。ローカル IAM サービスを使用して新しいユーザーを作成し、IAM ポリシーをアタッチできます。これらのポリシーを使用して、割り当てられたタスクの実行に必要なアクセスを許可できます。例えば、ユーザーにデータの転送を許可する一方で、新しい Amazon EC2 互換インスタンスの作成は制限することができます。

さらに、 AWS Security Token Service （AWS STS) を使用してローカルのセッションベースの認証情報をデバイスで作成できます。IAM サービスの詳細については、*IAM ユーザーガイド*の[使用開始](https://docs.aws.amazon.com/IAM/latest/GettingStartedGuide/)を参照してください。

デバイスのルート認証情報を無効にすることはできません。また、アカウント内のポリシーを使用してルート AWS アカウント ユーザーへのアクセスを明示的に拒否することはできません。ルートユーザーのアクセスキーを保護し、デバイスを日常的に操作するための IAM ユーザー認証情報を作成することをお勧めします。

**重要**  
このセクションのドキュメントは、 AWS Snowball Edge デバイスで IAM をローカルで使用する場合に適用されます。での IAM の使用の詳細については AWS クラウド、「」を参照してください[での Identity and Access Management AWS Snowball Edge](snowball-edge-iam.md)。  
 AWS サービスが Snowball Edge で適切に動作するには、サービスのポートを許可する必要があります。詳細については、「[Snowball Edge の AWS サービスのポート要件](port-requirements.md)」を参照してください。

**Topics**
+ [Snowball Edge での AWS CLI および API オペレーションの使用](#local-iam-specify-region)
+ [Snowball Edge でサポートされている AWS CLI IAM コマンドのリスト](#local-iam-cli-commands)
+ [Snowball Edge での IAM ポリシーの例](#policy-examples)
+ [Snowball Edge の TrustPolicy の例](#role-policy-example-trust)

## Snowball Edge での AWS CLI および API オペレーションの使用
<a name="local-iam-specify-region"></a>

 AWS CLI または API オペレーションを使用して Snowball Edge で IAM、 AWS STS Amazon S3、Amazon EC2 コマンドを発行する場合は、 を`region`「」と指定する必要があります`snow`。 これを行うには、次の例のように、 コマンド自体で `aws configure`または を使用します。

```
aws configure --profile abc
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: 1234567
Default region name [None]: snow
Default output format [None]: json
```

Or

```
aws iam list-users --endpoint http://192.0.2.0:6078 --region snow --profile snowballEdge 
```

**注記**  
で AWS Snowball Edge ローカルで使用されるアクセスキー ID とアクセスシークレットキーは、 のキーと交換できません AWS クラウド。

## Snowball Edge でサポートされている AWS CLI IAM コマンドのリスト
<a name="local-iam-cli-commands"></a>

以下は、Snowball Edge デバイスでサポートされている IAM の AWS CLI コマンドとオプションのサブセットの説明です。コマンドまたはオプションが以下に示されていない場合、そのコマンドまたはオプションはサポートされていません。コマンドでサポートされていないパラメータについては、説明に記載されています。
+ [attach-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-role-policy.html) - 指定した IAM ロールに指定した管理ポリシーをアタッチします。
+ [attach-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/attach-user-policy.html) - 指定したユーザーに指定した管理ポリシーをアタッチします。
+ [create-access-key](https://docs.aws.amazon.com/cli/latest/reference/iam/create-access-key.html) - 指定したユーザーに対し、新しいローカル IAM シークレットアクセスキーと、対応する AWS アクセスキー ID を作成します。
+ [create-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/create-policy.html) - デバイスの新しい IAM 管理ポリシーを作成します。
+ [create-role](https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html) — デバイスの新しいローカル IAM ロールを作成します。以下のパラメータはサポート**されていません**。
  + `Tags`
  + `PermissionsBoundary`
+ [create-user](https://docs.aws.amazon.com/cli/latest/reference/iam/create-user.html) — デバイスの新しいローカル IAM ユーザーを作成します。以下のパラメータはサポート**されていません**。
  + `Tags`
  + `PermissionsBoundary`
+ [delete-access-key](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-access-key.html) – 指定されたユーザーの新しいローカル IAM シークレットアクセスキーと対応する AWS アクセスキー ID を削除します。
+ [delete-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-policy.html) - 指定した管理ポリシーを削除します。
+ [delete-role](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-role.html) - 指定したロールを削除します。
+ [delete-user](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-user.html) - 指定したユーザーを削除します。
+ [detach-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-role-policy.html) - 指定したロールから指定の管理ポリシーを削除します。
+ [detach-user-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/detach-user-policy.html) - 指定したユーザーから指定の管理ポリシーを削除します。
+ [get-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy.html) - 指定した管理ポリシーについて、ポリシーのデフォルトバージョン、ポリシーがアタッチされているローカル IAM ユーザー、グループ、ロールの総数などの情報を取得します。
+ [get-policy-version](https://docs.aws.amazon.com/cli/latest/reference/iam/get-policy-version.html) - 指定した管理ポリシーの指定のバージョンについて、ポリシードキュメントなどの情報を取得します。
+ [get-role](https://docs.aws.amazon.com/cli/latest/reference/iam/get-role.html) - 指定したロールについて、そのロールのパス、GUID、ARN、ロールを継承するアクセス許可を付与する信頼ポリシーなどの情報を取得します。
+ [get-user](https://docs.aws.amazon.com/cli/latest/reference/iam/get-user.html) - 指定した IAM ユーザーについて、ユーザーの作成日、パス、一意の ID、ARN などの情報を取得します。
+ [list-access-keys](https://docs.aws.amazon.com/cli/latest/reference/iam/list-access-keys.html) - 指定した IAM ユーザーに関連付けられたアクセスキー ID に関する情報を返します。
+ [list-attached-role-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-role-policies.html) - 指定した IAM ロールにアタッチされたすべての管理ポリシーを一覧表示します。
+ [list-attached-user-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-attached-user-policies.html) - 指定した IAM ユーザーにアタッチされたすべての管理ポリシーを一覧表示します。
+ [list-entities-for-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/list-entities-for-policy.html) - 指定した管理ポリシーがアタッチされているすべてのローカル IAM ユーザー、グループ、およびロールを一覧表示します。
  + `--EntityFilter`: 値として `user` および `role` のみがサポートされます。
+ [list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html) - ローカル AWS アカウントで使用可能なすべての管理ポリシーを一覧表示します。次のパラメータはサポート**されていません**。
  + `--PolicyUsageFilter`
+ [list-roles](https://docs.aws.amazon.com/cli/latest/reference/iam/list-roles.html) - 指定したパスプレフィックスを持つローカル IAM ロールを一覧表示します。
+ [list-users](https://docs.aws.amazon.com/cli/latest/reference/iam/list-users.html) - 指定したパスのプレフィックスを持つ IAM ユーザーを一覧表示します。
+ [update-access-key](https://docs.aws.amazon.com/cli/latest/reference/iam/update-access-key.html) - 指定したアクセスキーのステータスを、アクティブから非アクティブ、またはその逆に変更します。
+ [update-assume-role-policy](https://docs.aws.amazon.com/cli/latest/reference/iam/update-assume-role-policy.html) - IAM エンティティにロールを継承する許可を与えるポリシーを更新します。
+ [update-role](https://docs.aws.amazon.com/cli/latest/reference/iam/update-role.html) - ロールの説明または最大セッション継続時間の設定を更新します。
+ [update-user](https://docs.aws.amazon.com/cli/latest/reference/iam/update-user.html) - 指定した IAM ユーザーの名前やパスを更新します。

### Snowball Edge でサポートされている IAM API オペレーション
<a name="iam-local-supported-apis"></a>

以下は、Snowball Edge で使用できる IAM API オペレーションと、IAM API リファレンスの説明へのリンクです。
+ [AttachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachRolePolicy.html) - 指定した IAM ロールに指定の管理ポリシーをアタッチします。
+ [AttachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AttachUserPolicy.html) - 指定したユーザーに指定の管理ポリシーをアタッチします。
+ [CreateAccessKey](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateAccessKey.html) - 指定したユーザーに対する新しいローカル IAM シークレットアクセスキーと、対応する AWS アクセスキー ID を作成します。
+ [CreatePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreatePolicy.html) - デバイスの新しい IAM 管理ポリシーを作成します。
+ [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html) - デバイスの新しいローカル IAM ロールを作成します。
+ [CreateUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateUser.html) - デバイスの新しいローカル IAM ユーザーを作成します。

  以下のパラメータはサポート**されていません**。
  + `Tags`
  + `PermissionsBoundary`
+ [DeleteAccessKey](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteAccessKey.html) - 指定したアクセスキーを削除します。
+ [DeletePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeletePolicy.html) - 指定した管理ポリシーを削除します。
+ [DeleteRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteRole.html) - 指定したロールを削除します。
+ [DeleteUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteUser.html) - 指定したユーザーを削除します。
+ [DetachRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachRolePolicy.html) - 指定したロールから指定の管理ポリシーを削除します。
+ [DetachUserPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DetachUserPolicy.html) - 指定したユーザーから指定の管理ポリシーを削除します。
+ [GetPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicy.html) - 指定した管理ポリシーについて、そのポリシーのデフォルトバージョン、ポリシーがアタッチされているローカル IAM ユーザー、グループ、ロールの総数などの情報を取得します。
+ [GetPolicyVersion](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetPolicyVersion.html) - 指定した管理ポリシーの指定のバージョンについて、ポリシードキュメントなどの情報を取得します。
+ [GetRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetRole.html) - 指定したロールについて、そのロールのパス、GUID、ARN、ロールを継承するアクセス許可を付与する信頼ポリシーなどの情報を取得します。
+ [GetUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetUser.html) - 指定した IAM ユーザーについて、ユーザーの作成日、パス、一意の ID、ARN などの情報を取得します。
+ [ListAccessKeys](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAccessKeys.html) - 指定した IAM ユーザーに関連付けられたアクセスキー ID に関する情報を返します。
+ [ListAttachedRolePolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedRolePolicies.html) - 指定した IAM ロールにアタッチされたすべての管理ポリシーを一覧表示します。
+ [ListAttachedUserPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html) - 指定した IAM ユーザーにアタッチされたすべての管理ポリシーを一覧表示します。
+ [ListEntitiesForPolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html) - 指定した IAM ユーザーについて、ユーザーの作成日、パス、一意の ID、ARN などの情報を取得します。
  + `--EntityFilter`: 値として `user` および `role` のみがサポートされます。
+ [ListPolicies](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicies.html) - ローカル AWS アカウントで使用可能なすべての管理ポリシーを一覧表示します。次のパラメータはサポート**されていません**。
  + `--PolicyUsageFilter`
+ [ListRoles](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRoles.html) - 指定したパスプレフィックスを持つローカル IAM ロールを一覧表示します。
+ [ListUsers](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html) - 指定したパスのプレフィックスを持つ IAM ユーザーを一覧表示します。
+ [UpdateAccessKey](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAccessKey.html) - 指定したアクセスキーのステータスを、アクティブから非アクティブ、またはその逆に変更します。
+ [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html) - IAM エンティティにロールを継承する許可を与えるポリシーを更新します。
+ [UpdateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateRole.html) - ロールの説明または最大セッション継続時間の設定を更新します。
+ [UpdateUser](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateUser.html) - 指定された IAM ユーザーの名前やパスを更新します。

### Snowball Edge でサポートされている IAM ポリシーのバージョンと文法
<a name="iam-policy"></a>

以下は、IAM ポリシーのローカル IAM サポートバージョン 2012-10-17 と、ポリシーの文法のサブセットです。


| ポリシータイプ | サポートされている文法 | 
| --- | --- | 
| ID ベースのポリシー (ユーザー/ロールポリシー) | 「Effect」、「Action」および「Resource」  ローカル IAM は、"`Condition`"、"`NotAction`"、"`NotResource`"、および "`Principal`" をサポートしていません。   | 
| リソースベースのポリシー (ロールの信頼ポリシー) | 「Effect」、「Action」および「Principal」  プリンシパルの場合、 AWS アカウント ID またはプリンシパル ID のみが許可されます。   | 

## Snowball Edge での IAM ポリシーの例
<a name="policy-examples"></a>

**注記**  
AWS Identity and Access Management (IAM) ユーザーには、[AWS OpsHub for Snow Family アプリケーション](aws-opshub.md)を使用して Snowball Edge を管理するための`"snowballdevice:*"`アクセス許可が必要です。

次に、Snowball Edge デバイスにアクセス許可を付与するポリシーの例を示します。

### IAM API を使用した Snowball Edge のサンプルユーザーの GetUser 呼び出しの許可
<a name="role-policy-example-iam"></a>

IAM API を介したサンプルユーザーの GetUser 呼び出しを許可するには、以下のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "iam:GetUser",
            "Resource": "arn:aws:iam:::user/example-user"
        }
    ]
}
```

------

### Snowball Edge での Amazon S3 API へのフルアクセスの許可
<a name="role-policy-example-s3-full"></a>

Amazon S3 API へのフルアクセスを許可するには、以下のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
            
        }
    ]
}
```

------

### Snowball Edge 上の Amazon S3 バケットへの読み取りおよび書き込みアクセスを許可する
<a name="role-policy-example-s3-bucket"></a>

 特定のバケットへの読み取りおよび書き込みアクセスを許可するには、次のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::bucket-name"
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Action": "s3:*Object",
            "Resource": "arn:aws:s3:::bucket-name/*"
        }
    ]
}
```

------<a name="role-policy-example-s3-list"></a>

### Snowball Edge 上の Amazon S3 バケットのリスト、取得、および配置へのアクセスを許可する
<a name="role-policy-example-s3-lgp"></a>

次のポリシーを使用して、特定の S3 バケットへの List、Get、および Put アクセスを許可します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:List*"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
        }
    ]
}
```

------

### Snowball Edge での Amazon EC2 API へのフルアクセスの許可
<a name="role-policy-example-ec2"></a>

 Amazon EC2 へのフルアクセスを許可するには、以下のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ec2:*",
            "Resource": "*"
        }
    ]
}
```

------

### Snowball Edge で Amazon EC2-compatibleインスタンスを起動および停止するアクセスを許可する
<a name="role-policy-example-ec2-stop-start"></a>

 次のポリシーを使用して、Amazon EC2 インスタンスの開始と停止のアクセスを許可します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### DescribeLaunchTemplates への呼び出しを拒否するが、Snowball Edge 上の DescribeImages へのすべての呼び出しを許可する
<a name="role-policy-example-ec2-desc-image"></a>

 `DescribeLaunchTemplates` への呼び出しを拒否するが、`DescribeImages` へのすべての呼び出しを許可するには、次のポリシーを使用します。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "ec2:DescribeLaunchTemplates"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeImages"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### Snowball Edge での API コールのポリシー
<a name="local-sts-cli-example-policy"></a>

ユーザー定義のマネージドポリシーを含む、Snow デバイスで使用可能なすべてのマネージドポリシーを一覧表示します。詳細は、「[list-policies](https://docs.aws.amazon.com/cli/latest/reference/iam/list-policies.html)」を参照してください。

```
aws iam list-policies --endpoint http://ip-address:6078 --region snow --profile snowballEdge
{
    "Policies": [
        {
            "PolicyName": "Administrator",
            "Description": "Root user admin policy for Account 123456789012",
            "CreateDate": "2020-03-04T17:44:59.412Z",
            "AttachmentCount": 1,
            "IsAttachable": true,
            "PolicyId": "policy-id",
            "DefaultVersionId": "v1",
            "Path": "/",
            "Arn": "arn:aws:iam::123456789012:policy/Administrator",
            "UpdateDate": "2020-03-04T19:10:45.620Z"
        }
    ]
}
```

## Snowball Edge の TrustPolicy の例
<a name="role-policy-example-trust"></a>

信頼ポリシーは、通常アクセスできない AWS リソースにアクセスするために使用できる一時的なセキュリティ認証情報のセットを返します。これらの一時的な認証情報は、アクセスキー ID、シークレットアクセスキー、およびセキュリティトークンで構成されています。通常、クロスアカウントアクセスには、アカウントで `AssumeRole` を使用します。

以下に示しているのは、信頼ポリシーの例です。信頼ポリシーの詳細については、*AWS Security Token Service API リファレンス*の [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::AccountId:root" //You can use the Principal ID instead of the account ID. 
                ]
            },
            "Action": [
                "sts:AssumeRole"
            ]
        }
    ]
}
```

------