

# AWS Migration Hub に対する認証とアクセスコントロール
<a name="auth-and-access-control"></a>



AWS Migration Hub へのアクセスには、AWS によってリクエストの認証に使用される認証情報が必要です。これらの認証情報には、AWS Migration Hub ProgressUpdateStream や Amazon EC2 インスタンスなどの AWS リソースへのアクセス許可が必要です。以下のセクションでは、[AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) と Migration Hub を使用して、リソースにアクセスできるユーザーを制御することで、リソースをセキュリティで保護する方法について詳しく説明します。
+ [認証](#authentication)
+ [アクセスコントロール](#access-control)

## 認証
<a name="authentication"></a>

AWS には、次のタイプのアイデンティティでアクセスできます。
+ **AWS account root user** – AWS accountを作成する場合は、このアカウントのすべての AWS servicesとリソースに完全にアクセスできる 1 つのサインインアイデンティティで始めます。このアイデンティティは AWS accountの*root user*と呼ばれ、アカウントの作成に使用した E メールアドレスとパスワードでのサインインによりアクセスします。root userは、日常的なタスクには使用しないことを強くお勧めします。root user認証情報を保護し、root userにしか実行できないタスクを実行する場合にのみ使用してください。root userとしてログインする必要があるタスクの詳細なリストについては、*AWS Account Management リファレンスガイド*の「[root user認証情報が必要なタスク](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html)」を参照してください。
+ **IAM ユーザー** – [IAM ユーザー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)は、特定のカスタム許可 (例えば、AWS Migration Hub で a function を作成する許可) を持つ AWS アカウント内のアイデンティティです。IAM のユーザー名とパスワードを使用して、[AWS Management Console](https://console.aws.amazon.com/)、[AWS ディスカッションフォーラム](https://forums.aws.amazon.com/)、[AWS Support Center](https://console.aws.amazon.com/support/home#/) などのセキュリティ保護された AWS ウェブページにサインインできます。

   

  ユーザー名とパスワードに加えて、各ユーザーの[アクセスキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html)を生成することもできます。[いくつかの SDK の 1 つ](https://aws.amazon.com/tools/#sdk)または [AWS Command Line Interface (CLI)](https://aws.amazon.com/cli/) を使ってプログラムで AWS サービスにアクセスするときに、これらのキーを使用できます。SDK と CLI ツールでは、アクセスキーを使用してリクエストが暗号で署名されます。AWS ツールを使用しない場合は、リクエストに自分で署名する必要があります。AWS Migration Hub supports *では、署名バージョン 4* がサポートされています。これは、インバウンド API リクエストを認証するためのプロトコルです。リクエストの認証の詳細については、*AWS General Reference*の「[署名バージョン 4 の署名プロセス](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)」を参照してください。

   
+ **IAM ロール** – [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)は、特定のアクセス権限を持ち、アカウントで作成できる IAM アイデンティティです。IAM ロールは、AWS で許可/禁止する操作を決めるアクセス権限ポリシーが関連付けられている AWS アイデンティティであるという点で、IAM ユーザーと似ています。ただし、ユーザーは 1 人の特定の人に一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。また、ロールには標準の長期認証情報 (パスワードやアクセスキーなど) も関連付けられません。代わりに、ロールを引き受けると、ロールセッション用の一時的なセキュリティ認証情報が提供されます。 IAM ロールと一時的な認証情報は、次の状況で役立ちます。

   
  + **フェデレーティッドユーザーアクセス** – ID フェデレーションにアクセス許可を割り当てるには、ロールを作成し、そのロールのアクセス許可を定義します。ID フェデレーションが認証されると、そのアイデンティティはロールに関連付けられ、ロールによって定義されたアクセス許可が付与されます。フェデレーション用のロールについては、*IAM ユーザーガイド*の「[サードパーティー ID プロバイダー用のロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)」を参照してください。IAM Identity Center を使用する場合は、アクセス許可セットを設定します。認証後にアイデンティティがアクセスできるものを制御するために、IAM Identity Center はアクセス許可セットを IAM のロールと関連付けます。アクセス許可セットの詳細については、*AWS IAM Identity Center ユーザーガイド*の「[アクセス許可セット](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)」を参照してください。

     
  + **AWS のサービスのアクセス** – サービスロールは、サービスがお客様に代わってアクションを実行するために引き受ける [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)です。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、*IAM ユーザーガイド*の「[AWS serviceのユーザーにアクセス許可を委任するロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)」を参照してください。 

      
  + **Amazon EC2 で実行中のアプリケーション** – IAM ロールを使用して、EC2 インスタンスで実行され、AWS CLI または AWS API リクエストを作成しているアプリケーションの一時的な認証情報を管理できます。これは、EC2 インスタンス内でのアクセスキーの保存に推奨されます。AWS ロールを EC2 インスタンスに割り当て、そのすべてのアプリケーションで使用できるようにするには、インスタンスにアタッチされたインスタンスプロファイルを作成します。インスタンスプロファイルにはロールが含まれ、EC2 インスタンスで実行されるプログラムは一時認証情報を取得することができます。詳細については、*IAM ユーザーガイド* の「[Amazon EC2 インスタンスで実行されるアプリケーションに IAM ロールを使用してアクセス許可を付与する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)」を参照してください。

    

## アクセスコントロール
<a name="access-control"></a>

有効な認証情報があればリクエストを認証できますが、アクセス許可がなければ AWS Migration Hub リソースの作成やアクセスはできません。たとえば、Migration Hub API タイプ、`ProgressUpdateStream` を作成し、AWS Application Discovery Service を使用して、AWS 移行ツールを使用するにはアクセス許可が必要です。

以下のセクションでは、AWS Migration Hub のアクセス許可を管理する方法について説明します。
+  [AWS Migration Hub ロールとポリシー](policy-templates.md) 
+  [AWS Migration Hub API のアクセス許可: アクションとリソースのリファレンス](migrationhub-api-permissions-ref.md) 
+  [説明される AWS Migration Hub 認証とアクセスコントロール](auth-and-access-explained.md) 

# AWS Migration Hub ロールとポリシー
<a name="policy-templates"></a>

AWS Migration Hub へのアクセスには、AWS がリクエストを認証するために使用できる認証情報と、AWS リソースにアクセスするためのアクセス許可が必要です。以下のセクションでは、さまざまなアクセス許可ポリシーを IAM アイデンティティ（ユーザー、グループ、ロール）にアタッチし、それによって AWS Migration Hub リソースでアクションを実行するアクセス許可を付与する方法を示します。

このセクションで参照されているさまざまなタイプのアクセス許可ポリシーについては、「[AWS Migration Hub でアイデンティティベースのポリシー（IAM ポリシー）を使用する](auth-and-access-explained.md#access-control-identity-based)」で説明しています。このセクションをまだ読んでいない場合は、このセクションのポリシーテンプレートを使用する前に、さまざまなタイプのポリシーを十分に理解しておくことをお勧めします。

ポリシーテンプレートは、次に示すように、次の階層に編成されています。任意のポリシーをクリックすると、そのテンプレートに直接移動できます。

**Topics**
+ [新しいユーザー IAM セットアップ](new-customer-setup.md)
+ [移行ツールのカスタムポリシー](customer-managed-vendor.md)

# 新しいユーザー IAM セットアップ
<a name="new-customer-setup"></a>

このセクションでは、AWS Migration Hub と共に使用できる 4 つのマネージドポリシーの概要 と、ユーザーまたは移行ツール用の Migration Hub コンソールまたは API へのアクセスをセットアップする方法について説明します。

## 必要なマネージドポリシー
<a name="required-managed-policies"></a>

アカウントのユーザーにアタッチ可能な以下の AWS マネージドポリシーは、Migration Hub に固有のもので、ユースケースシナリオ別にグループ化されます。
+ **AWSMigrationHubDiscoveryAccess** – （**migrationhub-discovery** ロールに含まれる） – Migration Hub サービスが Application Discovery Service を呼び出すことを許可するアクセス許可を付与します。
+ **AWSMigrationHubFullAccess** – 管理者以外のユーザーに対して、Migration Hub コンソールおよび API/CLI へのアクセス権を付与します。
+ **AWSMigrationHubSMSAccess** – Migration Hub が AWS Server Migration Service 移行ツールからの通知を受信するためのアクセス許可を付与します。
+ **AWSMigrationHubDMSAccess** – Migration Hub が AWS Database Migration Service 移行ツールから通知を受信するためのアクセス許可を付与します。

管理者以外の IAM ユーザーに Migration Hub 権限を付与する場合は、「[Migration Hub サービス API とコンソールマネージドアクセス](#api-console-access-managed)」を参照してください。

AWS 移行ツールを承認（つまり、接続）する場合は、「[AWS Server Migration Service (SMS)](#sms-managed)」 または「[AWS Database Migration Service (DMS)](#dms-managed)」を参照してください。

### Migration Hub サービス API とコンソールマネージドアクセス
<a name="api-console-access-managed"></a>

管理者は、ユーザーを作成し、マネージドポリシーを使用して Migration Hub コンソールにアクセスするアクセス許可を付与できます。

1. IAM コンソールに入ります。

1. ユーザーを作成します。

1. ユーザーが作成されたら、[アクセス許可] タブで [アクセス許可の追加] を選択します。

1. [Attach existing policies directly (既存のポリシーを直接アタッチ)] を選択します。

1. ポリシー「AWSMigrationHubFullAccess」を検索してアタッチします。 

### migrationhub-discovery ロール
<a name="adscaller-role-managed"></a>

Migration Hub を使用するには、`migrationhub-discovery` ロール（`AWSMigrationHubDiscoveryAccess` ポリシーを含む）を AWS アカウントに追加する必要があります。これにより、Migration Hub はお客様に代わって Application Discovery Service にアクセスできるようになります。

AWS Migration Hub コンソールは、Migration Hub コンソールを管理者として使用すると、AWS アカウントに自動的にアタッチされる `migrationhub-discovery` ロールを作成します。コンソールを使用せずに AWS コマンドラインインターフェイス (AWS CLI) または AWS Migration Hub API を使用する場合は、このロールを手動でアカウントに追加する必要があります。

1. IAM コンソールの [ロールセクション](https://console.aws.amazon.com/iam/home?#/roles) に移動します。

1. [**Create new role (新しいロールの選択)**] を選択します。

1. AWS サービスロールから「Amazon EC2」を選択します。

1. 「AWSApplicationDiscoveryServiceFullAccess」マネージドポリシーをアタッチします。

1. ロールに「migrationhub-discovery」という名前を付けます*（大文字と小文字を区別し、正しいスペルを使用した必要なロール名）*。

1. 新しいロールにアクセスし、[Trust Relationships (信頼関係)] タブで、[**Edit Trust Relationship (信頼関係の編集)**] を選択します。

1. 以下の信頼ポリシーを追加します。

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "migrationhub.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

### 移行ツール（マネージドポリシー）
<a name="migration-tools-managed"></a>

移行ハブが移行ツールからの通知を受け取るには、移行ツールごとにロールとポリシーが必要です。これらのアクセス許可により、SMS や DMS などの AWS のサービスが Migration Hub に更新を送信できるようになります。

#### AWS Server Migration Service (SMS)
<a name="sms-managed"></a>

1. IAM コンソールの [ロールセクション](https://console.aws.amazon.com/iam/home?#/roles) に移動します。

1. [**Create new role (新しいロールの選択)**] を選択します。

1. AWS サービスロールから「Amazon EC2」を選択します。

1. 「AWSMigrationHubSMSAccess」マネージドポリシーをアタッチします。

1. ロールに「migrationhub-sms」という名前を付けます*（大文字と小文字を区別し、正しいスペルを使用した必要なロール名）*。

1. 新しいロールにアクセスし、[Trust Relationships (信頼関係)] タブで、[**Edit Trust Relationship (信頼関係の編集)**] を選択します。

1. 以下の信頼ポリシーを追加します。

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": [
             "sms.amazonaws.com"
           ]
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

#### AWS Database Migration Service (DMS)
<a name="dms-managed"></a>

1. IAM コンソールの [ロールセクション](https://console.aws.amazon.com/iam/home?#/roles) に移動します。

1. [**Create new role (新しいロールの選択)**] を選択します。

1. AWS サービスロールから「Amazon EC2」を選択します。

1. 「AWSMigrationHubDMSAccess」マネージドポリシーをアタッチします。

1. ロールに「migrationhub-dms」という名前を付けます*（大文字と小文字を区別し、正しいスペルを使用した必要なロール名）*。

1. 新しいロールにアクセスし、[Trust Relationships (信頼関係)] タブで、[**Edit Trust Relationship (信頼関係の編集)**] を選択します。

1. 以下の信頼ポリシーを追加します。

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": [
             "dms.amazonaws.com"
           ]
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

# 移行ツールのカスタムポリシー
<a name="customer-managed-vendor"></a>

これは、AWS Migration Hub API または CLI を使用する場合に、統合パートナーまたは開発者が使用するロールの例です。

## 統合パートナーロールポリシー
<a name="customer-managed-vendor-role"></a>

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "mgh:CreateProgressUpdateStream"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:mgh:us-west-2:account_num:progressUpdateStream/vendor_name"
        },
        {
            "Action": [
                "mgh:AssociateCreatedArtifact",
                "mgh:DescribeMigrationTask",
                "mgh:DisassociateCreatedArtifact",
                "mgh:ImportMigrationTask",
                "mgh:ListCreatedArtifacts",
                "mgh:NotifyMigrationTaskState",
                "mgh:PutResourceAttributes",
                "mgh:NotifyApplicationState",
                "mgh:DescribeApplicationState",
                "mgh:AssociateDiscoveredResource",
                "mgh:DisassociateDiscoveredResource",
                "mgh:ListDiscoveredResources"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:mgh:us-west-2:account_num:progressUpdateStream/vendor_name/*"
        },
        {
            "Action": [
                "mgh:ListMigrationTasks"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

## 統合パートナーポリシーの信頼ポリシー
<a name="customer-managed-vendor-trust"></a>

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::vendor_account_num:root"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

# AWS Migration Hub API のアクセス許可: アクションとリソースのリファレンス
<a name="migrationhub-api-permissions-ref"></a>

[アクセスコントロール](auth-and-access-control.md#access-control) をセットアップし、IAM アイデンティティにアタッチできるアクセス権限ポリシー (アイデンティティベースのポリシー) を作成するときは、以下のテーブルをリファレンスとして使用できます。表は、各 Migration Hub API オペレーション、アクションを実行するアクセス許可を付与するためのアクション、およびアクセス許可を付与する AWS リソースをを示しています。ポリシーの `Action` フィールドでアクションを指定し、ポリシーの `Resource` フィールドでリソースの値を指定します。

**注記**  
アクションを指定するには、API オペレーション名 (`mgh:` など) の前に `mgh:CreateProgressUpdateStream` プレフィックスを使用します。

スクロールバーを使用して、テーブルの残りの部分を確認します。


**AWS Migration Hub API とアクションで必要なアクセス許可**  

| Migration Hub API オペレーション | 必要なアクセス権限 (API アクション) | リソース | 
| --- | --- | --- | 
|  [AssociateCreatedArtifact](http://docs.aws.amazon.com/migrationhub/latest/ug/API_AssociateCreatedArtifact.html)  | mgh:AssociateCreatedArtifact |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
|  [AssociateDiscoveredResource](http://docs.aws.amazon.com/migrationhub/latest/ug/API_AssociateDiscoveredResource.html)  |  mgh:AssociateDiscoveredResource  |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
|  [CreateProgressUpdateStream](http://docs.aws.amazon.com/migrationhub/latest/ug/API_CreateProgressUpdateStream.html)  | mgh:CreateProgressUpdateStream |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id  | 
| [DeleteProgressUpdateStream](http://docs.aws.amazon.com/migrationhub/latest/ug/API_DeleteProgressUpdateStream.html) | mgh:DeleteProgressUpdateStream |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id  | 
| [DescribeApplicationState](http://docs.aws.amazon.com/migrationhub/latest/ug/API_DescribeApplicationState.html)  |  mgh:DescribeApplicationState  |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [DescribeMigrationTask](http://docs.aws.amazon.com/migrationhub/latest/ug/API_DescribeMigrationTask.html) | mgh:DescribeMigrationTask |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
|  [DisassociateCreatedArtifact](http://docs.aws.amazon.com/migrationhub/latest/ug/API_DisassociateCreatedArtifact.html)  | mgh:DisassociateCreatedArtifact |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [DisassociateDiscoveredResource](http://docs.aws.amazon.com/migrationhub/latest/ug/API_DisassociateDiscoveredResource.html) | mgh:DisassociateDiscoveredResource |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [ImportMigrationTask](http://docs.aws.amazon.com/migrationhub/latest/ug/API_ImportMigrationTask.html) | mgh:ImportMigrationTask |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [ListCreatedArtifacts](http://docs.aws.amazon.com/migrationhub/latest/ug/API_ListCreatedArtifacts.html) | mgh:ListCreatedArtifacts |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
|  [ListDiscoveredResources](http://docs.aws.amazon.com/migrationhub/latest/ug/API_ListDiscoveredResources.html)  | mgh:ListDiscoveredResources |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
|  [ListMigrationTasks](http://docs.aws.amazon.com/migrationhub/latest/ug/API_ListMigrationTasks.html)  | mgh:ListMigrationTasks |  \$1  | 
|  [ListProgressUpdateStreams](http://docs.aws.amazon.com/migrationhub/latest/ug/API_ListProgressUpdateStreams.html)  | mgh:ListProgressUpdateStreams |  \$1  | 
| [NotifyApplicationState](http://docs.aws.amazon.com/migrationhub/latest/ug/API_NotifyApplicationState.html) | mgh:NotifyApplicationState |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [NotifyMigrationTaskState](http://docs.aws.amazon.com/migrationhub/latest/ug/API_NotifyMigrationTaskState.html) | mgh:NotifyMigrationTaskState |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 
| [PutResourceAttributes](http://docs.aws.amazon.com/migrationhub/latest/ug/API_PutResourceAttributes.html) | mgh:PutResourceAttributes |  arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id または arn:aws:mgh:region:account-id:ProgressUpdateStreamName/resource-id/\$1  | 

## 関連トピック
<a name="w2aac17c17c23"></a>
+ [アクセスコントロール](auth-and-access-control.md#access-control)

# 説明される AWS Migration Hub 認証とアクセスコントロール
<a name="auth-and-access-explained"></a>

## AWS Migration Hub リソースへのアクセス許可の管理の概要
<a name="access-control-overview"></a>

すべての AWS リソースは AWS アカウントによって所有され、となり、リソースの作成またはアクセスは、アクセス権限のポリシーによって管理されます。アカウント管理者は、アクセス許可ポリシーを IAM ID （ユーザー、グループ、ロール）にアタッチし、アクセス許可ポリシーをリソースにアタッチすることもできます。

**注記**  
*アカウント管理者* (または管理者ユーザー) は、管理者権限を持つユーザーです。詳細については、*IAM ユーザーガイド* の「[IAM のベストプラクティス](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)」を参照してください。

アクセス権限を付与する場合、アクセス権限を取得するユーザー、取得するアクセス権限の対象となるリソース、およびそれらのリソースに対して許可される特定のアクションを決定します。

**Topics**
+ [AWS Migration Hub リソースおよびオペレーション](#access-control-resources)
+ [リソース所有権について](#access-control-resource-ownership)
+ [リソースへのアクセスの管理](#access-control-manage-access-intro)
+ [ポリシー要素の指定 : アクション、効果、プリンシパル](#specify-policy-elements)
+ [ポリシーでの条件の指定](#specifying-conditions)

### AWS Migration Hub リソースおよびオペレーション
<a name="access-control-resources"></a>



 AWS Migration Hub では、プライマリリソースは、Migration Hub *ProgressUpdateStream*です。 このリソースには、次の表に示すように、一意の Amazon リソースネーム (ARN) が関連付けられています。


****  

| リソースタイプ | ARN 形式  | 
| --- | --- | 
| ProgressUpdateStream |  arn:aws:mgh:*region*:*account-id*:ProgressUpdateStreamName:*resource-name*  | 

AWS Migration Hub には、Migration Hub リソースを操作するための一連のオペレーションが用意されています。使用可能なオペレーションのリストについては、「[Actions](API_Operations.md)」を参照してください。

### リソース所有権について
<a name="access-control-resource-ownership"></a>

*リソース所有者*は、リソースを作成した AWS アカウントです。つまり、リソース所有者は、リソースの作成リクエストを認証する*プリンシパルエンティティ* (ルートアカウント、IAM ユーザー、または IAM ロール) の AWS アカウントです。以下の例では、このしくみを示しています。
+ AWS アカウントのルートアカウント認証情報を使用して Migration Hub ProgressUpdateStream を作成する場合、AWS アカウントはリソースの所有者です（Migration Hub では、リソースは ProgressUpdateStream です）。
+ AWS アカウントに IAM ユーザーを作成し、Migration Hub ProgressUpdateStream を作成するためのアクセス許可をそのユーザーに付与した場合、そのユーザーは ProgressUpdateStream を作成できます。ただし、ユーザーが属する AWS アカウントは ProgressUpdateStream リソースを所有しています。
+ AWS アカウントに、Migration Hub ProgressUpdateStream を作成するためのアクセス許可を持つ IAM ロールを作成する場合は、ロールを引き受けることのできるいずれのユーザーも ProgressUpdateStream を作成できます。ユーザーが属する AWS アカウントは ProgressUpdateStream リソースを所有しています。

### リソースへのアクセスの管理
<a name="access-control-manage-access-intro"></a>

*アクセスポリシー*では、誰が何にアクセスできるかを記述します。以下のセクションで、アクセス権限のポリシーを作成するために使用可能なオプションについて説明します。

**注記**  
このセクションでは、AWS Migration Hub のコンテキストでの IAM の使用について説明します。これは、IAM サービスに関する詳細情報を取得できません。詳細な IAM ドキュメントについては、*IAM ユーザーガイド*の「[IAM とは](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html)」を参照してください。IAM ポリシー構文の詳細および説明については、*IAM ユーザーガイド* の「[AWS IAM ポリシーリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html)」を参照してください。

IAM アイデンティティにアタッチされたポリシーは*アイデンティティベース*のポリシー（IAM ポリシー）と呼ばれ、リソースにアタッチされたポリシーは*リソースベース*のポリシーと呼ばれます。AWS Migration Hub * はアイデンティティベースのポリシー（IAM ポリシー）をサポートしていません*。「[リソースベースのポリシー](#access-control-manage-access-resource-based)」を参照してください。

**Topics**
+ [アイデンティティベースのポリシー (IAM ポリシー)](#access-control-manage-access-identity-based)
+ [リソースベースのポリシー](#access-control-manage-access-resource-based)

#### アイデンティティベースのポリシー (IAM ポリシー)
<a name="access-control-manage-access-identity-based"></a>

ポリシーを IAM アイデンティティにアタッチできます。たとえば、次の操作を実行できます。 
+ **アカウントのユーザーまたはグループにアクセス許可ポリシーをアタッチする** – アカウント管理者は、特定のユーザーに関連付けられるアクセス許可ポリシーを使用して、そのユーザーに Migration Hub リソースを作成するアクセス許可を付与することができます。
+ **アクセス権限ポリシーをロールにアタッチする (クロスアカウントのアクセス権限を付与)** – アイデンティティベースのアクセス権限ポリシーを IAM ロールにアタッチして、クロスアカウントのアクセス権限を付与することができます。たとえば、アカウント A の管理者は、次のように他のまたは AWS にクロスアカウントのアクセス権限を別の AWS アカウント (アカウント B) または AWS サービスに付与するロールを作成することができます。

  1. アカウント A の管理者は、IAM ロールを作成して、アカウント A のリソースに権限を付与するロールに権限ポリシーをアタッチします。

  1. アカウント A の管理者は、アカウント B をそのロールを引き受けるプリンシパルとして識別するロールに、信頼ポリシーをアタッチします。

  1. アカウント B の管理者は、アカウント B のユーザーにロールを引き受ける権限を委任できるようになります。これにより、アカウント B のユーザーにアカウント A のリソースの作成とアクセスが許可されます。AWS サービスのアクセス権限を付与してロールを引き受けさせたい場合は、信頼ポリシー内のプリンシパルも、AWS サービスのプリンシパルとなることができます。

   IAM を使用したアクセス許可の委任の詳細については、[IAM ユーザーガイド](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) の「*アクセス管理*」を参照してください。

すべてのリソースの Migration Hub アクション `mgh:NotifyMigrationTaskState` のアクセス許可を付与するポリシーの例を次に示します。

```
{
  "Version": "2017-03-31",
  "Statement": {
    "Effect": "Allow",
    "Action":[
      "mgh:NotifyMigrationTaskState"
    ],
    "Resource": "*"
      
  }
}
```

Migration Hub でアイデンティティベースのポリシーを使用する方法の詳細については、「[AWS Migration Hub でアイデンティティベースのポリシー（IAM ポリシー）を使用する](#access-control-identity-based)」を参照してください。ユーザー、グループ、ロール、アクセス権限の詳細については、*IAM ユーザーガイド* の「[アイデンティティ (ユーザー、グループ、ロール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html)」を参照してください。

#### リソースベースのポリシー
<a name="access-control-manage-access-resource-based"></a>

Amazon S3 などの他のサービスでは、リソースベースのアクセス権限ポリシーもサポートされています。たとえば、ポリシーを S3 バケットにアタッチして、そのバケットに対するアクセス許可を管理できます。Migration Hub はリソースベースのポリシーをサポートしていません。ただし、リソースへの参照は引き続き表示されることに注意してください。これが、* リソースベース*のアクセス許可と*リソースレベル*のアクセス許可には違いがある理由です。

リソースベースのアクセス許可は、リソースに直接アタッチするアクセス許可です。一方、リソースレベルのアクセス許可は、ユーザーまたはロールがアクションを実行できるリソースを ID ベースのアクセス許可内で指定するだけです。したがって、Migration Hub アクセス許可についてリソースへの参照が作成されると、*リソースレベルの* アクセス許可のこのコンテキスト内になります。

### ポリシー要素の指定 : アクション、効果、プリンシパル
<a name="specify-policy-elements"></a>

サービスは、Migration Hub リソースごとに一連の API オペレーションを定義します。こうした API オペレーションへのアクセス許可を付与するために、Migration Hub は一連のアクションをポリシーに定義します。一部の API オペレーションは、API オペレーションを実行するために複数のアクションに対するアクセス許可を要求できます。リソースおよび API オペレーションに関する詳細については、「[AWS Migration Hub リソースおよびオペレーション](#access-control-resources)」および「Migration Hub [Actions](API_Operations.md)」を参照してください。

以下は、最も基本的なポリシーの要素です。
+ **リソース** – Amazon リソースネーム (ARN) を使用して、ポリシーを適用するリソースを識別します。詳細については、「[AWS Migration Hub リソースおよびオペレーション](#access-control-resources)」を参照してください。
+ **アクション** – アクションのキーワードを使用して、許可または拒否するリソースオペレーションを識別します。たとえば、`mgh:AssociateDiscoveredResource` を使用して、ユーザーのアクセス許可に Migration Hub `AssociateDiscoveredResource` オペレーションの実行を許可できます。
+ **効果** – ユーザーが特定のアクションをリクエストする際の効果 (許可または拒否) を指定します。リソースへのアクセスを明示的に許可していない場合、アクセスは暗黙的に拒否されます。また、明示的にリソースへのアクセスを拒否すると、別のポリシーによってアクセスが許可されている場合でも、ユーザーはそのリソースにアクセスできなくなります。
+ **プリンシパル** – アイデンティティベースのポリシー (IAM ポリシー) で、ポリシーがアタッチされているユーザーが黙示的なプリンシパルとなります。リソースベースのポリシーでは、アクセス許可（リソースベースのポリシーにのみ適用）を受け取りたいユーザー、アカウント、サービス、またはその他のエンティティを指定します。Migration Hub では、リソースベースのポリシーはサポートされていません。

IAM ポリシーの構文と説明についての詳細については、*IAM ユーザーガイド* の「[AWS IAM ポリシーリファレンス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html)」を参照してください。

すべての AWS Migration Hub API アクションとそれらが適用されるリソースの表については、「[AWS Migration Hub API のアクセス許可: アクションとリソースのリファレンス](migrationhub-api-permissions-ref.md)」を参照してください。





### ポリシーでの条件の指定
<a name="specifying-conditions"></a>

アクセス権限を付与するとき、IAM ポリシー言語を使用して、ポリシーが有効になる必要がある条件を指定できます。たとえば、特定の日付の後にのみ適用されるポリシーが必要になる場合があります。ポリシー言語での条件の指定の詳細については、*IAM ユーザーガイド*の「[条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Condition)」を参照してください。

条件を表すには、あらかじめ定義された条件キーを使用します。Migration Hub に固有の条件キーはありません。ただし、AWS 全体の条件キーがあり、必要に応じて使用できます。AWS 全体を対象とするすべてのキーのリストについては、『*IAM ユーザーガイド*』の「[条件に利用可能なキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys)」を参照してください。

## AWS Migration Hub でアイデンティティベースのポリシー（IAM ポリシー）を使用する
<a name="access-control-identity-based"></a>

このトピックでは、アカウント管理者が IAM アイデンティティ（ユーザー、グループ、ロール）へのアクセス許可ポリシーをアタッチする、アイデンティティベースのポリシーについて説明します。

**重要**  
 初めに、AWS Migration Hub リソースへのアクセスを管理するための基本概念と使用可能なオプションについて説明する概要トピックをお読みになることをお勧めします。詳細については、「[AWS Migration Hub リソースへのアクセス許可の管理の概要](#access-control-overview)」を参照してください。

このセクションでは、次のトピックを対象としています。
+ [AWS Migration Hub コンソールおよび API を使用するために必要なアクセス許可](#console-required-permissions) 
+ [AWS Migration Hub での AWS マネージド（事前定義）ポリシー](#access-policy-examples-aws-managed) 
+ [AWS Migration Hub 信頼ポリシー](#access-policy-examples-aws-trust) 



以下に示しているのは、アクセス権限ポリシーの例です。

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "mgh:AssociateCreatedArtifact",
                "mgh:NotifyApplicationState",
                "mgh:ListDiscoveredResources"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:mgh:us-west-2:account_num:ProgressUpdateStreamName/DMS/*"
        }
    ]
}
```

次に、移行ツールを承認する信頼ポリシーを定義する必要があります。この例では、AWS Database Migration Service (DMS) がロールを引き受けます。

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "dms.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

このポリシーは、アクセス許可ポリシーと信頼ポリシーの 2 つの部分に実装されます。 
+ アクセス許可ポリシーは、AWS DMS 移行ツールの Amazon リソースネーム (ARN) で識別されるすべてのリソースに対する Migration Hub アクション（`mgh:AssociateCreatedArtifact`、`mgh:NotifyApplicationState`、および `mgh:ListDiscoveredResources`）のアクセス許可を付与します。リソース名の最後に指定されているワイルドカード文字 (\$1) は、移行ツールが特定の ProgressUpdateStream 名で作成する移行タスクに対して動作できることを意味します。
+ 信頼ポリシーは、AWS DMS 移行ツールがロールのアクセス許可ポリシーを引き受けることを承認します。Migration Hub ポリシーには、常に信頼ポリシーが関連付けられている必要があります。

すべての AWS Migration Hub API アクションとそれらが適用されるリソースと条件の表については、「[AWS Migration Hub API のアクセス許可: アクションとリソースのリファレンス](migrationhub-api-permissions-ref.md)」を参照してください。

### AWS Migration Hub コンソールおよび API を使用するために必要なアクセス許可
<a name="console-required-permissions"></a>

AWS Migration Hub コンソールは、ユーザーと API が Migration Hub リソースを作成し、移行を管理するための統合環境を提供します。コンソールには、アクセスするために特定のアクセス許可を必要とする多くの機能とワークフローが用意されています。これらのアクセス許可を実装する最善の方法は、マネージドポリシーを使用することです。「[コンソールと API マネージドアクセス](new-customer-setup.md#api-console-access-managed)」を参照してください。

また、「[AWS Migration Hub API のアクセス許可: アクションとリソースのリファレンス](migrationhub-api-permissions-ref.md)」で説明されている API 固有のアクセス許可もあります。

#### AWS Migration Hub での AWS マネージド（事前定義）ポリシー
<a name="access-policy-examples-aws-managed"></a>

AWS は、AWS によって作成され管理されるスタンドアロンの IAM ポリシーが提供する多くの一般的ユースケースに対応します。これらの AWS マネージドポリシーは、一般的ユースケースに必要なアクセス許可を付与することで、どの権限が必要なのかをユーザーが調査する必要をなくすことができます。

アカウントのユーザーにアタッチ可能な以下の AWS マネージドポリシーは、Migration Hub に固有のもので、ユースケースシナリオ別にグループ化されます。
+ **AWSMigrationHubDiscoveryAccess** – Migration Hub サービスによる Application Discovery Service 呼び出しを許可するアクセス許可を付与します。
+ **AWSMigrationHubFullAccess** – 管理者以外のユーザーに対して、Migration Hub コンソールおよび API/CLI へのアクセス権を付与します。
+ **AWSMigrationHubSMSAccess** – Migration Hub が AWS Server Migration Service 移行ツールからの通知を受信するためのアクセス許可を付与します。
+ **AWSMigrationHubDMSAccess** – Migration Hub が AWS Database Migration Service 移行ツールから通知を受信するためのアクセス許可を付与します。

**注記**  
IAM コンソールにサインインし、これらの特定のポリシーを検索することで、これらのアクセス許可ポリシーを確認することができます。

独自のカスタム IAM ポリシーを作成して、Migration Hub のアクションとリソースのためのアクセス許可を許可することもできます。こうしたカスタムポリシーは、該当するアクセス権限が必要な IAM ユーザーまたはグループにアタッチできます。

### AWS Migration Hub 信頼ポリシー
<a name="access-policy-examples-aws-trust"></a>

信頼ポリシーは、プリンシパルがロールのアクセス許可ポリシーを引き受けるか、使用することを承認するだけです。AWS アカウント（「ルート」ユーザー）、IAM ユーザー、またはロールをプリンシパルにすることができます。Migration Hub では、信頼ポリシーをアクセス許可ポリシーに手動で追加する必要があります。

したがって、IAM ロールごとに 2 つの個別のポリシーを作成する必要があります。
+ アクセス許可ポリシーは、プリンシパルが使用できるアクションとリソースを定義します。
+ 信頼ポリシーでは、誰がロールを引き受けることができるかを指定します（信頼されたエンティティまたはプリンシパル）。

# Migration Hub のサービスにリンクされたロールの使用
<a name="using-service-linked-roles"></a>

AWS Migration Hub は、AWS Identity and Access Management (IAM)[サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスにリンクされたロールは、Migration Hub に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは、Migration Hub による事前定義済みのロールであり、ユーザーに代わってサービスから AWS の他のサービスを呼び出すために必要なすべてのアクセス権限を備えています。

サービスにリンクされたロールを使用すると、必要なアクセス許可を手動で追加する必要がなくなるため、Migration Hub の設定が簡単になります。Migration Hub がそのサービスにリンクされたロールのアクセス許可、およびそのロールを引き受けるサービスを定義します。アクセス許可には、他の IAM エンティティにアタッチできない信頼ポリシーとアクセス許可ポリシーが含まれます。

サービスにリンクされたロールをサポートする他のサービスについては、「[IAM と連携する AWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照の上、「**サービスにリンクされたロール**」列が「**はい**」になっているサービスを検索してください。サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[**はい**] リンクを選択します。

**Topics**
+ [Using Roles to Connect Migration Hub to Application Discovery Service](using-service-linked-roles-discovery-service-role.md)
+ [Using Roles to Connect Migration Hub to AWS DMS](using-service-linked-roles-dms-service-role.md)
+ [Using Roles to Connect Migration Hub to AWS SMS](using-service-linked-roles-sms-service-role.md)

# Using Roles to Connect Migration Hub to Application Discovery Service
<a name="using-service-linked-roles-discovery-service-role"></a>

Migration Hub では、[**AWSServiceRoleForMigrationHub**] と呼ばれるサービスにリンクされたロールを使用します。このロールにより、Migration Hub はユーザーに代わって Application Discovery Service を呼び出すことができます。これにより、AWS Migration Hub は、検出されたサーバーおよびアプリケーションに、移行追跡の更新を一致させることができます。

## Migration Hub のサービスにリンクされたロールのアクセス許可
<a name="service-linked-role-permissions-discovery-service-role"></a>

AWSServiceRoleForMigrationHub サービスにリンクされたロールは、ロールを引き受ける上で次のサービスを信頼します。
+ `migrationhub.amazonaws.com`

ロールのアクセス許可ポリシーは次のとおりです。

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

IAM エンティティ（ユーザー、グループ、ロールなど）がサービスにリンクされたロールを作成、編集、削除できるようにするには、アクセス許可を設定する必要があります。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールのアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## Migration Hub のサービスにリンクされたロールの作成
<a name="create-service-linked-role-discovery-service-role"></a>

サービスにリンクされたロールを手動で作成する必要はありません。サービスにリンクされたロールは、access the Migration Hub console を行うと、Migration Hub で自動的に作成されます。

**重要**  
このサービスにリンクされたロールがアカウントに表示されるのは、このロールでサポートされている機能を使用する別のサービスでアクションが完了した場合です。詳細については、「[IAM アカウントに新しいロールが表示される](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)」を参照してください。

### Migration Hub でのサービスにリンクされたロールの削除（コンソール）
<a name="create-service-linked-role-service-console-discovery-service-role"></a>

Migration Hub コンソールを使用して、サービスにリンクされたこのロールを作成できます。ウェブブラウザを開き、[console.aws.amazon.com/migrationhub](https://console.aws.amazon.com/migrationhub) の Migration Hub コンソールに移動します。

IAM コンソールを使用して、AWS CLI または AWS API でサービスにリンクされたロールを作成することもできます。詳細については、『*IAM ユーザーガイド*』の「[サービスにリンクされたロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)」を参照してください。

このロールを削除してから再度作成する場合は、同じプロセスを使用します。サービスにリンクされたロールは、access the Migration Hub console を行うと Migration Hub で再度自動的に作成されます。

## Migration Hub のサービスにリンクされたロールの編集
<a name="edit-service-linked-role-discovery-service-role"></a>

Migration Hub では、AWSServiceRoleForMigrationHub サービスにリンクされたロールを編集することはできません。サービスにリンクされたロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。詳細については、*IAM ユーザーガイド* の「[サービスにリンクされたロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Migration Hub のサービスにリンクされたロールの削除
<a name="delete-service-linked-role-discovery-service-role"></a>

### サービスにリンクされたロールを手動で削除する
<a name="slr-manual-delete-discovery-service-role"></a>

IAM コンソール、AWS CLI、AWS API を使用して、AWSServiceRoleForMigrationHub サービスにリンクされたロールを削除します。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールの削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」を参照してください。

## Migration Hub サービスにリンクされたロールがサポートされるリージョン
<a name="slr-regions-discovery-service-role"></a>

Migration Hub は、サービスを利用できる 米国西部 (オレゴン) AWS リージョンで、サービスにリンクされたロールの使用をサポートします。

# Using Roles to Connect Migration Hub to AWS DMS
<a name="using-service-linked-roles-dms-service-role"></a>

Migration Hub は [**AWSServiceRoleForMigrationHubDMSAccess**] という名前のサービスにリンクされたロールを使用します – AWS Database Migration Service (AWS DMS) がサポートされている AWS リージョンから 米国西部 (オレゴン) の Migration Hub に移行追跡情報を送信できるようにします。

## Migration Hub のサービスにリンクされたロールのアクセス許可
<a name="service-linked-role-permissions-dms-service-role"></a>

AWSServiceRoleForMigrationHubDMSAccess サービスにリンクされたロールは、ロールを引き受ける上で次のサービスを信頼します。
+ `dms.amazonaws.com`

ロールのアクセス許可ポリシーは次のとおりです。

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "mgh:CreateProgressUpdateStream",
            "Resource": "arn:aws:mgh:*:*:progressUpdateStream/DMS"
        },
        {
            "Effect": "Allow",
            "Action": [
                "mgh:DescribeMigrationTask",
                "mgh:AssociateDiscoveredResource",
                "mgh:ListDiscoveredResources",
                "mgh:ImportMigrationTask",
                "mgh:ListCreatedArtifacts",
                "mgh:DisassociateDiscoveredResource",
                "mgh:AssociateCreatedArtifact",
                "mgh:NotifyMigrationTaskState",
                "mgh:DisassociateCreatedArtifact",
                "mgh:PutResourceAttributes"
            ],
            "Resource": "arn:aws:mgh:*:*:progressUpdateStream/DMS/migrationTask/*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "mgh:ListMigrationTasks",
                "mgh:NotifyApplicationState",
                "mgh:DescribeApplicationState"
            ],
            "Resource": "*"
        }
    ]
}
```

IAM エンティティ（ユーザー、グループ、ロールなど）がサービスにリンクされたロールを作成、編集、削除できるようにするには、アクセス許可を設定する必要があります。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールのアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## Migration Hub のサービスにリンクされたロールの作成
<a name="create-service-linked-role-dms-service-role"></a>

サービスにリンクされたロールを手動で作成する必要はありません。サービスにリンクされたロールは、connect to AWS DMS in the Migration Hub console を行うと、Migration Hub で自動的に作成されます。

**重要**  
 このサービスにリンクされたロールがアカウントに表示されるのは、このロールでサポートされている機能を使用する別のサービスでアクションが完了した場合です。詳細については、「[IAM アカウントに新しいロールが表示される](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)」を参照してください。

### Migration Hub でのサービスにリンクされたロールの削除（コンソール）
<a name="create-service-linked-role-service-console-dms-service-role"></a>

Migration Hub コンソールを使用して、サービスにリンクされたロールを作成できます。

**サービスにリンクされたロールを作成するには (コンソール)**

1. ウェブブラウザを開き、[console.aws.amazon.com/migrationhub](https://console.aws.amazon.com/migrationhub) の Migration Hub コンソールに移動します。

1. 左側のナビゲーションの [**Migrate (移行)**] で、[**Tools (ツール)******] を選択します。

1. [**Database migration tools (データベース移行ツール)**] までスクロールします。

1. [**Database Migration Service (データベース移行サービス)**] ボックスで、[**Connect (接続)**] を選択します。

IAM コンソールを使用して、AWS CLI または AWS API でサービスにリンクされたロールを作成することもできます。詳細については、『*IAM ユーザーガイド*』の「[サービスにリンクされたロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)」を参照してください。

このサービスにリンクされたロールを削除してから再度作成する場合は、同じプロセスを使用します。サービスにリンクされたロールは、connect to AWS DMS in the Migration Hub console を行うと Migration Hub で再度自動的に作成されます。

## Migration Hub のサービスにリンクされたロールの編集
<a name="edit-service-linked-role-dms-service-role"></a>

Migration Hub では、 AWSServiceRoleForMigrationHubDMSAccess サービスにリンクされたロールを編集することはできません。サービスにリンクされたロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。詳細については、*IAM ユーザーガイド* の「[サービスにリンクされたロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Migration Hub のサービスにリンクされたロールの削除
<a name="delete-service-linked-role-dms-service-role"></a>

### サービスにリンクされたロールを手動で削除する
<a name="slr-manual-delete-dms-service-role"></a>

IAM コンソール、AWS CLI、AWS API を使用して、AWSServiceRoleForMigrationHubDMSAccess サービスにリンクされたロールを削除します。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールの削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」を参照してください。

## Migration Hub サービスにリンクされたロールがサポートされるリージョン
<a name="slr-regions-dms-service-role"></a>

Migration Hub は、サービスを利用できる 米国西部 (オレゴン) AWS リージョンで、サービスにリンクされたロールの使用をサポートします。

# Using Roles to Connect Migration Hub to AWS SMS
<a name="using-service-linked-roles-sms-service-role"></a>

Migration Hub は [**AWSServiceRoleForMigrationHubSMSAccess**] という名前のサービスにリンクされたロールを使用します – AWS Server Migration Service (AWS SMS) がサポートされている AWS リージョンから 米国西部 (オレゴン) の Migration Hub に移行追跡情報を送信できるようにします。

## Migration Hub のサービスにリンクされたロールのアクセス許可
<a name="service-linked-role-permissions-sms-service-role"></a>

AWSServiceRoleForMigrationHubSMSAccess サービスにリンクされたロールは、ロールを引き受ける上で次のサービスを信頼します。
+ `sms.amazonaws.com`

ロールのアクセス許可ポリシーは次のとおりです。

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "mgh:CreateProgressUpdateStream",
            "Resource": "arn:aws:mgh:*:*:progressUpdateStream/SMS"
        },
        {
            "Effect": "Allow",
            "Action": [
                "mgh:DescribeMigrationTask",
                "mgh:AssociateDiscoveredResource",
                "mgh:ListDiscoveredResources",
                "mgh:ImportMigrationTask",
                "mgh:ListCreatedArtifacts",
                "mgh:DisassociateDiscoveredResource",
                "mgh:AssociateCreatedArtifact",
                "mgh:NotifyMigrationTaskState",
                "mgh:DisassociateCreatedArtifact",
                "mgh:PutResourceAttributes"
            ],
            "Resource": "arn:aws:mgh:*:*:progressUpdateStream/SMS/migrationTask/*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "mgh:ListMigrationTasks",
                "mgh:NotifyApplicationState",
                "mgh:DescribeApplicationState"
            ],
            "Resource": "*"
        }
    ]
}
```

IAM エンティティ（ユーザー、グループ、ロールなど）がサービスにリンクされたロールを作成、編集、削除できるようにするには、アクセス許可を設定する必要があります。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールのアクセス許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## Migration Hub のサービスにリンクされたロールの作成
<a name="create-service-linked-role-sms-service-role"></a>

サービスにリンクされたロールを手動で作成する必要はありません。サービスにリンクされたロールは、connect to AWS SMS in the Migration Hub console すると Migration Hub で自動的に作成されます。

**重要**  
 このサービスにリンクされたロールがアカウントに表示されるのは、このロールでサポートされている機能を使用する別のサービスでアクションが完了した場合です。詳細については、「[IAM アカウントに新しいロールが表示される](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared)」を参照してください。

### Migration Hub でのサービスにリンクされたロールの削除（コンソール）
<a name="create-service-linked-role-service-console-sms-service-role"></a>

Migration Hub コンソールを使用して、サービスにリンクされたロールを作成できます。

1. ウェブブラウザを開き、[console.aws.amazon.com/migrationhub](https://console.aws.amazon.com/migrationhub) の Migration Hub コンソールに移動します。

1. 左側のナビゲーションの [**Migrate (移行)**] で、[**Tools (ツール)******] を選択します。

1. [**Server Migration Service (サーバー移行サービス)**] ボックスで、[**Connect (接続)**] を選択します。

IAM コンソールを使用して、AWS CLI または AWS API でサービスにリンクされたロールを作成することもできます。詳細については、『*IAM ユーザーガイド*』の「[サービスにリンクされたロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)」を参照してください。

このサービスにリンクされた役割を削除し、再度作成する場合は、同じプロセスを使用します。サービスにリンクされたロールは、connect to AWS SMS in the Migration Hub console すると Migration Hub で再度自動的に作成されます。

## Migration Hub のサービスにリンクされたロールの編集
<a name="edit-service-linked-role-sms-service-role"></a>

Migration Hub では、AWSServiceRoleForMigrationHubSMSAccess サービスにリンクされたロールを編集することはできません。サービスにリンクされたロールを作成すると、多くのエンティティによってロールが参照される可能性があるため、ロール名を変更することはできません。ただし、IAM を使用したロールの説明の編集はできます。詳細については、*IAM ユーザーガイド* の「[サービスにリンクされたロールの編集](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## Migration Hub のサービスにリンクされたロールの削除
<a name="delete-service-linked-role-sms-service-role"></a>

### サービスにリンクされたロールを手動で削除する
<a name="slr-manual-delete-sms-service-role"></a>

IAM コンソール、AWS CLI、AWS API を使用して、AWSServiceRoleForMigrationHubSMSAccess サービスにリンクされたロールを削除します。詳細については、*IAM ユーザーガイド*の「[サービスにリンクされたロールの削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」を参照してください。

## Migration Hub サービスにリンクされたロールがサポートされるリージョン
<a name="slr-regions-sms-service-role"></a>

Migration Hub は、サービスを利用できる 米国西部 (オレゴン) AWS リージョンで、サービスにリンクされたロールの使用をサポートします。