

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

# サービスロール
<a name="security-iam-service-roles"></a>

## Deadline Cloud が IAM サービスロールを使用する方法
<a name="how-deadline-cloud-manages-credentials"></a>

Deadline Cloud は自動的に IAM ロールを引き受け、ワーカー、ジョブ、および Deadline Cloud モニターに一時的な認証情報を提供します。このアプローチにより、ロールベースのアクセスコントロールを通じてセキュリティを維持しながら、手動の認証情報管理が不要になります。

モニター、フリート、キューを作成するときは、Deadline Cloud がユーザーに代わって引き受ける IAM ロールを指定します。その後、ワーカーと Deadline Cloud モニターは、アクセスするためにこれらのロールから一時的な認証情報を受け取ります AWS のサービス。

## フリートロール
<a name="fleet-role"></a>

Deadline Cloud ワーカーが作業を受け取り、その作業の進行状況をレポートするために必要なアクセス許可を付与するようにフリートロールを設定します。

通常、このロールを自分で設定する必要はありません。このロールは、Deadline Cloud コンソールで作成して、必要なアクセス許可を含めることができます。トラブルシューティングのためにこのロールの詳細を理解するには、次のガイドを使用します。

プログラムでフリートを作成または更新する場合は、 `CreateFleet` または `UpdateFleet` API オペレーションを使用してフリートロール ARN を指定します。

### フリートロールの動作
<a name="what-fleet-role-does"></a>

フリートロールは、ワーカーに次のアクセス許可を付与します。
+ 新しい作業を受け取り、進行中の作業の進捗状況を Deadline Cloud サービスに報告する
+ ワーカーのライフサイクルとステータスを管理する
+ ワーカーログのログイベントを Amazon CloudWatch Logs に記録する

### フリートロールの信頼ポリシーを設定する
<a name="fleet-role-trust-policy"></a>

フリートロールは Deadline Cloud サービスを信頼し、特定のファームに限定する必要があります。

ベストプラクティスとして、信頼ポリシーには混乱した代理保護のセキュリティ条件を含める必要があります。混乱した代理の保護の詳細については、*「Deadline Cloud ユーザーガイド*」の[「混乱した代理](cross-service-confused-deputy-prevention.md)」を参照してください。
+ `aws:SourceAccount` は、同じ のリソースのみがこのロールを引き受け AWS アカウント ることができるようにします。
+ `aws:SourceArn` は、ロールの引き受けを特定の Deadline Cloud ファームに制限します。

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Sid": "AllowDeadlineCredentialsService",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "credentials.deadline.amazonaws.com"
      },
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "YOUR_ACCOUNT_ID"
        },
        "ArnEquals": {
          "aws:SourceArn": "arn:aws:deadline:REGION:YOUR_ACCOUNT_ID:farm/YOUR_FARM_ID"
        }
      }
    }
  ]
}
```

### フリートロールのアクセス許可をアタッチする
<a name="fleet-role-permissions"></a>

フリートロールに次の AWS 管理ポリシーをアタッチします。

[AWSDeadlineCloud-FleetWorker](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-FleetWorker.html)

この管理ポリシーは、以下のアクセス許可を提供します。
+ `deadline:AssumeFleetRoleForWorker` - ワーカーが認証情報を更新できるようにします。
+ `deadline:UpdateWorker` - ワーカーがステータスを更新できるようにします (終了時に STOPPED など）。
+ `deadline:UpdateWorkerSchedule` - 作業の取得と進行状況の報告用。
+ `deadline:BatchGetJobEntity` - ジョブ情報を取得する場合。
+ `deadline:AssumeQueueRoleForWorker` - ジョブの実行中にキューロールの認証情報にアクセスする場合。

### 暗号化されたファームに KMS アクセス許可を追加する
<a name="fleet-role-kms-permissions"></a>

ファームが KMS キーを使用して作成された場合は、これらのアクセス許可をフリートロールに追加して、ワーカーがファーム内の暗号化されたデータにアクセスできるようにします。

KMS アクセス許可は、ファームに KMS キーが関連付けられている場合にのみ必要です。`kms:ViaService` 条件は 形式を使用する必要があります`deadline.{region}.amazonaws.com`。

フリートを作成すると、そのフリートの CloudWatch Logs ロググループが作成されます。ワーカーのアクセス許可は、Deadline Cloud サービスによって使用され、その特定のワーカー専用のログストリームを作成します。ワーカーをセットアップして実行すると、ワーカーはこれらのアクセス許可を使用してログイベントを CloudWatch Logs に直接送信します。

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Sid": "CreateLogStream",
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogStream"
      ],
      "Resource": "arn:aws:logs:REGION:YOUR_ACCOUNT_ID:log-group:/aws/deadline/YOUR_FARM_ID/*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": [
            "deadline.REGION.amazonaws.com"
          ]
        }
      }
    },
    {
      "Sid": "ManageLogEvents",
      "Effect": "Allow",
      "Action": [
        "logs:PutLogEvents",
        "logs:GetLogEvents"
      ],
      "Resource": "arn:aws:logs:REGION:YOUR_ACCOUNT_ID:log-group:/aws/deadline/YOUR_FARM_ID/*"
    },
    {
      "Sid": "ManageKmsKey",
      "Effect": "Allow",
      "Action": [
        "kms:Decrypt",
        "kms:DescribeKey",
        "kms:GenerateDataKey"
      ],
      "Resource": "YOUR_FARM_KMS_KEY_ARN",
      "Condition": {
        "StringEquals": {
          "kms:ViaService": "deadline.REGION.amazonaws.com"
        }
      }
    }
  ]
}
```

### フリートロールの変更
<a name="modifying-fleet-role"></a>

フリートロールのアクセス許可はカスタマイズできません。説明されているアクセス許可は常に必須であり、アクセス許可を追加しても効果はありません。

## カスタマーマネージドフリートホストロール
<a name="customer-managed-fleet-host-role"></a>

Amazon EC2 インスタンスまたはオンプレミスホストでカスタマーマネージドフリートを使用する場合は、WorkerHost ロールを設定します。

### WorkerHost ロールの動作
<a name="what-workerhost-role-does"></a>

WorkerHost ロールは、カスタマーマネージドフリートホストでワーカーをブートストラップします。ホストが以下を行うために必要な最小限のアクセス許可を提供します。
+ Deadline Cloud でワーカーを作成する
+ フリートロールを引き受けて運用認証情報を取得する
+ フリートタグを使用してワーカーにタグを付ける (タグ伝達が有効になっている場合)

### WorkerHost ロールのアクセス許可を設定する
<a name="workerhost-role-permissions"></a>

次の AWS 管理ポリシーを WorkerHost ロールにアタッチします。

[AWSDeadlineCloud-WorkerHost](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-WorkerHost.html)

この管理ポリシーは、以下のアクセス許可を提供します。
+ `deadline:CreateWorker` - ホストが新しいワーカーを登録できるようにします。
+ `deadline:AssumeFleetRoleForWorker` - ホストがフリートロールを引き受けることを許可します。
+ `deadline:TagResource` - 作成中のワーカーのタグ付けを許可します (有効になっている場合）。
+ `deadline:ListTagsForResource` - 伝播用のフリートタグの読み取りを許可します。

### ブートストラッププロセスを理解する
<a name="bootstrap-process"></a>

WorkerHost ロールは、ワーカーの初回起動時にのみ使用されます。

1. ワーカーエージェントは、WorkerHost 認証情報を使用してホストで起動します。

1. を呼び出し`deadline:CreateWorker`て Deadline Cloud に登録します。

1. 次に、 を呼び出し`deadline:AssumeFleetRoleForWorker`てフリートロールの認証情報を取得します。

1. この時点から、ワーカーはすべてのオペレーションにフリートロール認証情報のみを使用します。

WorkerHost ロールは、ワーカーの実行開始後は使用されません。このポリシーは、サービスマネージドフリートには必要ありません。サービスマネージドフリートでは、ブートストラップが自動的に実行されます。

## キューロール
<a name="queue-role"></a>

キューロールは、タスクを処理するときにワーカーによって引き受けられます。このロールは、タスクを完了するために必要なアクセス許可を提供します。

プログラムでキューを作成または更新する場合は、 `CreateQueue` または `UpdateQueue` API オペレーションを使用してキューロール ARN を指定します。

### キューロールの信頼ポリシーを設定する
<a name="queue-role-trust-policy"></a>

キューロールは Deadline Cloud サービスを信頼する必要があります。

ベストプラクティスとして、信頼ポリシーには混乱した代理保護のセキュリティ条件を含める必要があります。混乱した代理の保護の詳細については、*「Deadline Cloud ユーザーガイド*」の[「混乱した代理](cross-service-confused-deputy-prevention.md)」を参照してください。
+ `aws:SourceAccount` は、同じ のリソースのみがこのロールを引き受け AWS アカウント ることができるようにします。
+ `aws:SourceArn` は、ロールの引き受けを特定の Deadline Cloud ファームに制限します。

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "credentials.deadline.amazonaws.com",
          "deadline.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "YOUR_ACCOUNT_ID"
        },
        "ArnEquals": {
          "aws:SourceArn": "arn:aws:deadline:us-west-2:123456789012:farm/{farm-id}"
        }        
      }
    }
  ]
}
```

### キューロールのアクセス許可を理解する
<a name="queue-role-permissions"></a>

キューロールは 1 つの管理ポリシーを使用しません。代わりに、コンソールでキューを設定すると、Deadline Cloud は設定に基づいてキューのカスタムポリシーを作成します。

この自動作成されたポリシーは、以下へのアクセスを提供します。

#### ジョブアタッチメント
<a name="job-attachments-permissions"></a>

ジョブの入出力ファイル用に指定された Amazon S3 バケットへの読み取りおよび書き込みアクセス:

```
{
  "Effect": "Allow",
  "Action": [
    "s3:GetObject",
    "s3:PutObject", 
    "s3:ListBucket",
    "s3:GetBucketLocation"
  ],
  "Resource": [
    "arn:aws:s3:::YOUR_JOB_ATTACHMENTS_BUCKET",
    "arn:aws:s3:::YOUR_JOB_ATTACHMENTS_BUCKET/YOUR_PREFIX/*"
  ],
  "Condition": {
    "StringEquals": {
      "aws:ResourceAccount": "YOUR_ACCOUNT_ID"
    }
  }
}
```

#### ジョブのログ
<a name="job-logs-permissions"></a>

このキュー内のジョブの CloudWatch Logs への読み取りアクセス。各キューには独自のロググループがあり、各セッションには独自のログストリームがあります。

```
{
  "Effect": "Allow",
  "Action": [
    "logs:GetLogEvents"
  ],
  "Resource": "arn:aws:logs:REGION:YOUR_ACCOUNT_ID:log-group:/aws/deadline/YOUR_FARM_ID/*"
}
```

#### サードパーティー製ソフトウェア
<a name="dcc-software-permissions"></a>

Deadline Cloud でサポートされているサードパーティーソフトウェア (Maya、Blender など) をダウンロードするアクセス:

```
{
  "Effect": "Allow",
  "Action": [
    "s3:ListBucket",
    "s3:GetObject"
  ],
  "Resource": "*",
  "Condition": {
    "ArnLike": {
      "s3:DataAccessPointArn": "arn:aws:s3:*:*:accesspoint/deadline-software-*"
    },
    "StringEquals": {
      "s3:AccessPointNetworkOrigin": "VPC"
    }
  }
}
```

### ジョブのアクセス許可を追加する
<a name="add-permissions-for-jobs"></a>

ジョブがアクセスする必要がある AWS のサービス のキューロールにアクセス許可を追加します。OpenJobDescription ステップスクリプトを記述すると、 AWS CLI と SDK はキューロールの認証情報を自動的に使用します。これを使用して、ジョブの完了に必要な追加サービスにアクセスします。

ユースケースの例を以下に示します。
+  カスタムデータを取得するための
+ カスタムライセンスサーバーにトンネルする SSM アクセス許可
+ カスタムメトリクスを出力するための CloudWatch 
+ 動的ワークフロー用の新しいジョブを作成する Deadline Cloud アクセス許可

### キューロールの認証情報の使用方法
<a name="how-queue-role-credentials-used"></a>

Deadline Cloud は、キューロールの認証情報を以下に提供します。
+ ジョブ実行中のワーカー
+ Deadline Cloud CLI を介したユーザーと、ジョブの添付ファイルやログを操作する際のモニタリング

Deadline Cloud は、キューごとに個別の CloudWatch Logs ロググループを作成します。ジョブはキューロールの認証情報を使用して、キューのロググループにログを書き込みます。Deadline Cloud CLI とモニターは、キューロール ( 経由`deadline:AssumeQueueRoleForRead`) を使用してキューのロググループからジョブログを読み込みます。Deadline Cloud CLI とモニターは、キューロール ( 経由`deadline:AssumeQueueRoleForUser`) を使用してジョブアタッチメントデータをアップロードまたはダウンロードします。

## ロールをモニタリングする
<a name="monitor-role"></a>

Deadline Cloud モニターウェブおよびデスクトップアプリケーションに Deadline Cloud リソースへのアクセスを許可するようにモニターロールを設定します。

プログラムでモニターを作成または更新する場合は、 `CreateMonitor` または `UpdateMonitor` API オペレーションを使用してモニターロール ARN を指定します。

### モニターロールの動作
<a name="what-monitor-role-does"></a>

モニターロールにより、Deadline Cloud モニターはエンドユーザーに以下へのアクセスを提供できます。
+ Deadline Cloud Integrated Submitters、CLI、モニターに必要な基本機能
+ エンドユーザー向けのカスタム機能

### モニターロールの信頼ポリシーを設定する
<a name="monitor-role-trust-policy"></a>

モニターロールは Deadline Cloud サービスを信頼する必要があります。

ベストプラクティスとして、信頼ポリシーには混乱した代理保護のセキュリティ条件を含める必要があります。混乱した代理の保護の詳細については、*「Deadline Cloud ユーザーガイド*」の[「混乱した代理](cross-service-confused-deputy-prevention.md)」を参照してください。

`aws:SourceAccount` は、同じ のリソースのみがこのロールを引き受け AWS アカウント ることができるようにします。

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "credentials.deadline.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "YOUR_ACCOUNT_ID"
        }
      }
    }
  ]
}
```

### モニターロールのアクセス許可をアタッチする
<a name="monitor-role-permissions"></a>

基本オペレーションのために、以下の AWS 管理ポリシーをすべてモニターロールにアタッチします。
+ [AWSDeadlineCloud-UserAccessFarms](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-UserAccessFarms.html)
+ [AWSDeadlineCloud-UserAccessFleets](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-UserAccessFleets.html)
+ [AWSDeadlineCloud-UserAccessJobs](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-UserAccessJobs.html)
+ [AWSDeadlineCloud-UserAccessQueues](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSDeadlineCloud-UserAccessQueues.html)

### モニターロールの仕組み
<a name="how-monitor-role-works"></a>

Deadline Cloud モニターを使用する場合、サービスユーザーは AWS IAM アイデンティティセンター (IAM Identity Center) を使用してサインインし、モニターロールが引き受けられます。引き受けたロール認証情報は、ファーム、フリート、キュー、その他の情報のリストなど、モニター UI を表示するためにモニターアプリケーションによって使用されます。

Deadline Cloud モニターデスクトップアプリケーションを使用する場合、これらの認証情報は、エンドユーザーから提供されたプロファイル名に対応する名前付き AWS 認証情報プロファイルを使用してワークステーションでさらに利用可能になります。名前付きプロファイルの詳細については、 [AWS SDK およびツールリファレンスガイド](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)を参照してください。

この名前付きプロファイルは、Deadline CLI と送信者が Deadline Cloud リソースにアクセスする方法です。

### 高度なユースケースに合わせてモニターロールをカスタマイズする
<a name="customizing-monitor-role"></a>

モニターロールをカスタマイズして、各アクセスレベル (ビューワー、コントリビューター、マネージャー、所有者) でユーザーが実行できる操作を変更したり、高度なワークフローのアクセス許可を追加したりできます。

#### アクセスレベルのアクセス許可のカスタマイズ
<a name="customizing-access-levels"></a>

モニターロールにアタッチされた 4 つの AWS 管理ポリシーは、各アクセスレベルが実行できる操作を制御します。モニターロールにカスタムポリシーを追加して、 `deadline:MembershipLevel`条件キーを使用して特定のアクセスレベルのアクセス許可を付与または制限できます。

たとえば、コントリビューターがジョブ (通常はマネージャーと所有者に制限されます) を更新およびキャンセルできるようにするには、次のようなポリシーを追加します。

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "deadline:UpdateJob",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "deadline:MembershipLevel": "CONTRIBUTOR"
        }
      }
    }
  ]
}
```

このポリシーを使用すると、コントリビューターはジョブを送信することに加えて、ジョブを更新およびキャンセルできます。

#### 高度なワークフローに対するアクセス許可の追加
<a name="adding-monitor-permissions"></a>

カスタム IAM ポリシーをモニターロールに追加して、すべてのモニターユーザーに追加のアクセス許可を付与できます。これは、ユーザーが標準の Deadline Cloud 機能 AWS のサービス を超えて にアクセスする必要がある高度なスクリプトワークフローに役立ちます。

モニターロールを変更するときは、次のガイドラインに従ってください。
+ 管理ポリシーを削除しないでください。これらのポリシーを削除すると、モニター機能が壊れます。

### Deadline Cloud Monitor がモニターロールの認証情報を使用する方法
<a name="how-monitor-uses-credentials"></a>

Deadline Cloud Monitor は、認証時にモニターロールの認証情報を自動的に取得します。この機能を使用すると、デスクトップアプリケーションは、標準のウェブブラウザで使用できる以上の拡張モニタリング機能を提供できます。

Deadline Cloud Monitor でログインすると、 AWS CLI または他の AWS ツールで使用できるプロファイルが自動的に作成されます。このプロファイルはモニターロールの認証情報を使用し、モニターロールのアクセス許可 AWS のサービス に基づいて へのプログラムによるアクセスを許可します。

Deadline Cloud 送信者は同じように動作します。Deadline Cloud モニターによって作成されたプロファイルを使用して、適切なロールのアクセス許可 AWS のサービス で にアクセスします。

## Deadline Cloud ロールの高度なカスタマイズ
<a name="advanced-customization"></a>

Deadline Cloud ロールを追加のアクセス許可で拡張して、基本的なレンダリングワークフロー以外の高度なユースケースを実現できます。このアプローチでは、Deadline Cloud のアクセス管理システムを活用して、キューメンバーシップ AWS のサービス に基づいて追加の へのアクセスを制御します。

### とのチームコラボレーション AWS CodeCommit
<a name="codecommit-collaboration"></a>

キューロールにアクセス AWS CodeCommit 許可を追加して、プロジェクトリポジトリでチームコラボレーションを有効にします。このアプローチでは、追加のユースケースに Deadline Cloud のアクセス管理システムを使用します。特定のキューにアクセスできるユーザーのみがこれらのアクセス AWS CodeCommit 許可を受け取るため、Deadline Cloud キューメンバーシップを通じてプロジェクトごとのリポジトリアクセスを管理できます。

これは、アーティストがレンダリングワークフローの一部として AWS CodeCommit リポジトリに保存されているプロジェクト固有のアセット、スクリプト、または設定ファイルにアクセスする必要があるシナリオに役立ちます。

#### キューロールにアクセス AWS CodeCommit 許可を追加する
<a name="add-codecommit-permissions-advanced"></a>

アクセスを有効にするには、キューロールに次の AWS CodeCommit アクセス許可を追加します。

```
{
  "Effect": "Allow",
  "Action": [
    "codecommit:GitPull",
    "codecommit:GitPush",
    "codecommit:GetRepository",
    "codecommit:ListRepositories"
  ],
  "Resource": "arn:aws:codecommit:REGION:YOUR_ACCOUNT_ID:PROJECT_REPOSITORY"
}
```

#### アーティストワークステーションで認証情報プロバイダーを設定する
<a name="setup-credential-provider-advanced"></a>

 AWS CodeCommit アクセスに Deadline Cloud キュー認証情報を使用するように各アーティストワークステーションを設定します。この設定はワークステーションごとに 1 回行われます。

**認証情報プロバイダーを設定するには**

1. 認証情報プロバイダープロファイルを設定ファイル (`~/.aws/config`) AWS に追加します。

   ```
   [profile queue-codecommit]
   credential_process = deadline queue export-credentials --farm-id farm-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --queue-id queue-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
   ```

1.  AWS CodeCommit リポジトリにこのプロファイルを使用するように Git を設定します。

   ```
   git config --global credential.https://git-codecommit---REGION.amazonaws.com.rproxy.govskope.us.helper '!aws codecommit credential-helper --profile queue-codecommit $@'
   git config --global credential.https://git-codecommit---REGION.amazonaws.com.rproxy.govskope.us.UseHttpPath true
   ```

*farm-XXXXXXXXXXXXXXXXXXXXXXXXXXXX *および *queue-XXXXXXXXXXXXXXXXXXXXXXXXXXXX *を実際のファーム ID とキュー IDs。*REGION* を自分の AWS リージョン (例: ) に置き換えます`us-west-2`。

#### キュー認証情報 AWS CodeCommit での の使用
<a name="using-codecommit-with-queue-credentials-advanced"></a>

設定すると、Git オペレーションは AWS CodeCommit リポジトリにアクセスするときにキューロール認証情報を自動的に使用します。`deadline queue export-credentials` コマンドは、次のような一時的な認証情報を返します。

```
{
  "Version": 1,
  "AccessKeyId": "ASIA...",
  "SecretAccessKey": "...",
  "SessionToken": "...",
  "Expiration": "2025-11-10T23:02:23+00:00"
}
```

これらの認証情報は必要に応じて自動的に更新され、Git オペレーションはシームレスに機能します。

```
git clone https://git-codecommit.REGION.amazonaws.com/v1/repos/PROJECT_REPOSITORY
git pull
git push
```

アーティストは、個別の AWS CodeCommit 認証情報を必要とせずに、キューのアクセス許可を使用してプロジェクトリポジトリにアクセスできるようになりました。特定のキューにアクセスできるユーザーのみが関連付けられたリポジトリにアクセスできるため、Deadline Cloud のキューメンバーシップシステムを通じてきめ細かなアクセスコントロールが可能になります。