

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

# レポートグループを共有
<a name="report-groups-sharing"></a>

レポートグループ共有を使用すると、複数の AWS アカウントまたはユーザーがレポートグループ、期限切れでないレポート、およびレポートのテスト結果を表示できます。このモデルでは、レポートグループを所有するアカウント (所有者) は、レポートグループを他のアカウント (コンシューマー) と共有します。コンシューマは、レポートグループを編集できません。レポートは、作成されてから 30 日後に期限切れになります。

**Topics**
+ [レポートグループを共有](#report-groups-sharing-share)
+ [関連サービス](#report-groups-sharing-related)
+ [共有されているレポートグループにアクセス](report-groups-sharing-access-prereqs.md)
+ [共有レポートグループを共有解除](report-groups-sharing-unshare.md)
+ [共有レポートグループを識別](report-groups-sharing-identify.md)
+ [共有レポートグループのアクセス許可](report-groups-sharing-perms.md)

## レポートグループを共有
<a name="report-groups-sharing-share"></a>

 レポートグループを共有すると、コンシューマーには、レポートグループとそのレポートに対する読み取り専用アクセス権が付与されます。コンシューマーは を使用して、各レポートのレポートグループ、そのレポート、およびテストケースの結果 AWS CLI を表示できます。コンシューマは次を行うことはできません。
+  CodeBuild コンソールでの共有レポートグループまたはそのレポートの表示。
+  共有レポートグループの編集。
+  プロジェクト内の共有レポートグループの ARN を使用してレポートを実行。共有レポートグループを指定するプロジェクトのビルドが失敗します。

CodeBuild コンソールを使用して、既存のリソース共有にレポートグループを追加できます。新しいリソース共有にレポートグループを追加する場合は、まず[AWS RAM コンソール](https://console.aws.amazon.com/ram) でレポートグループを作成する必要があります。

レポートグループを組織単位または組織全体と共有するには、 AWS Organizationsとの共有を有効にする必要があります。詳細については、*AWS RAM ユーザーガイド*の「[AWS Organizationsで共有を有効化する](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html)」を参照してください。

CodeBuild コンソール、 AWS RAM コンソール、または AWS CLI を使用して、所有しているレポートグループを共有できます。

**前提条件**  
レポートグループを共有するには、 AWS アカウントがそのグループを所有している必要があります。自分と共有されているレポートグループは共有できません。

**所有するレポートグループを共有するには (CodeBuild コンソール)**

1. [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home) で AWS CodeBuild コンソールを開きます。

1. ナビゲーションペインで、[**Report groups (レポートグループ)**] を選択します。

1.  共有するプロジェクトを選択し、[**Share (共有)**] を選択します。詳細については、*AWS RAM ユーザーガイド*の「[リソースの共有の作成](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create)」を参照してください。

**所有しているレポートグループを共有するには (AWS RAM コンソール)**  
「**AWS RAM ユーザーガイド」の「[リソース共有の作成](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing.html#working-with-sharing-create)」を参照してください。

**所有しているレポートグループを共有するには (AWS RAM コマンド)**  
[create-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/create-resource-share.html) コマンドを使用します。

 **所有するレポートグループを共有するには (CodeBuild コマンド)** 

[put-resource-policy](https://docs.aws.amazon.com/cli/latest/reference/codebuild/put-resource-policy.html) コマンドを使用します:

1. `policy.json` という名前のファイルを作成し、その中に次をコピーします。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[{
        "Effect":"Allow",
        "Principal":{
          "AWS":"111122223333"
        },
        "Action":[
          "codebuild:BatchGetReportGroups",
          "codebuild:BatchGetReports",
          "codebuild:ListReportsForReportGroup",
          "codebuild:DescribeTestCases"],
        "Resource":"arn:aws:iam::*:role/Service*"
      }]
    }
   ```

------

1. レポートグループ ARN とそれを共有する識別子で `policy.json` を更新します。次の例では、ARN を持つレポートグループへの読み取り専用アクセス`arn:aws:codebuild:us-west-2:123456789012:report-group/my-report-group`を Alice および 123456789012 で識別される AWS アカウントのルートユーザーに付与します。

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[{
        "Effect":"Allow",
        "Principal":{
          "AWS": [
             "arn:aws:iam::123456789012:user/Alice",
             "123456789012"
           ]
        },
        "Action":[
          "codebuild:BatchGetReportGroups",
          "codebuild:BatchGetReports",
          "codebuild:ListReportsForReportGroup",
          "codebuild:DescribeTestCases"],
        "Resource":"arn:aws:codebuild:us-west-2:123456789012:report-group/my-report-group"
      }]
    }
   ```

------

1. 以下のコマンドを実行してください。

   ```
   aws codebuild put-resource-policy --resource-arn report-group-arn --policy file://policy.json
   ```

## 関連サービス
<a name="report-groups-sharing-related"></a>

レポートグループ共有は AWS Resource Access Manager 、 AWS (AWS RAM) と統合されます。これは、リソースを任意の AWS アカウントまたは を通じて共有できるようにするサービスです AWS Organizations。では AWS RAM、リソースと共有するコンシューマーを指定する*リソース共有*を作成して、所有しているリソースを共有します。コンシューマーは、個々の AWS アカウント、 の組織単位 AWS Organizations、または の組織全体です AWS Organizations。

詳細については、「*[AWS RAM ユーザーガイド](https://docs.aws.amazon.com/ram/latest/userguide/)*」を参照してください。

# 共有されているレポートグループにアクセス
<a name="report-groups-sharing-access-prereqs"></a>

共有レポートグループにアクセスするには、コンシューマーの IAM ロールに `BatchGetReportGroups` アクセス許可が必要です。次のポリシーを IAM ロールにアタッチすることができます。

```
{
    "Effect": "Allow",
    "Resource": [
        "*"
    ],
    "Action": [
        "codebuild:BatchGetReportGroups"
    ]
}
```

 詳細については、「[でのアイデンティティベースのポリシーの使用 AWS CodeBuild](auth-and-access-control-iam-identity-based-access-control.md)」を参照してください。

# 共有レポートグループを共有解除
<a name="report-groups-sharing-unshare"></a>

レポートとテストケースの結果が含まれる共有が解除されたレポートグループは、その所有者だけがアクセスできます。レポートグループの共有を解除すると、以前に共有した AWS アカウントまたはユーザーは、レポートグループ、そのレポート、またはレポート内のテストケースの結果にアクセスできなくなります。

所有するレポートグループを共有または共有を解除するには、リソース共有から削除する必要があります。これを行う AWS CLI には、 AWS RAM コンソールまたは を使用できます。

**所有している共有レポートグループの共有を解除するには (AWS RAM コンソール)**  
*AWS RAM ユーザーガイド* の「[リソース共有の更新](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing.html#working-with-sharing-update)」を参照してください。

**所有している共有レポートグループの共有を解除するには (AWS RAM コマンド)**  
[disassociate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/disassociate-resource-share.html) コマンドを使用します。

 **CodeBuild コマンドを所有しているレポートグループの共有を解除するには)** 

[delete-resource-policy](https://docs.aws.amazon.com/cli/latest/reference/codebuild/delete-resource-policy.html) コマンドを実行し、共有を解除したいレポートグループの ARN を指定する:

```
aws codebuild delete-resource-policy --resource-arn report-group-arn
```

# 共有レポートグループを識別
<a name="report-groups-sharing-identify"></a>

所有者とコンシューマーは、 AWS CLI を使用して共有レポートグループを識別できます。

共有レポートグループとそのレポートを識別して情報を取得するには、次のコマンドを使用します。
+  自分と共有されているレポートグループの ARN を表示するには、`[list-shared-report-groups](https://docs.aws.amazon.com/cli/latest/reference/codebuild/list-shared-report-groups.html)`を実行します。

  ```
  aws codebuild list-shared-report-groups
  ```
+  レポートグループ内のレポートの ARN を表示するには、レポートグループ ARN を使い `[list-reports-for-report-group](https://docs.aws.amazon.com/cli/latest/reference/codebuild/list-reports-for-report-group.html)` を実行します。

  ```
  aws codebuild list-reports-for-report-group --report-group-arn report-group-arn
  ```
+  レポート内のテストケースに関する情報を表示するには、レポート ARN を使い、`[describe-test-cases](https://docs.aws.amazon.com/cli/latest/reference/codebuild/describe-test-cases.html)` を実行します。

  ```
  aws codebuild describe-test-cases --report-arn report-arn
  ```

   出力は次のようになります。

  ```
  {
      "testCases": [
          {
              "status": "FAILED",
              "name": "Test case 1",
              "expired": 1575916770.0,
              "reportArn": "report-arn",
              "prefix": "Cucumber tests for agent",
              "message": "A test message",
              "durationInNanoSeconds": 1540540,
              "testRawDataPath": "path-to-output-report-files"
          },
          {
              "status": "SUCCEEDED",
              "name": "Test case 2",
              "expired": 1575916770.0,
              "reportArn": "report-arn",
              "prefix": "Cucumber tests for agent",
              "message": "A test message",
              "durationInNanoSeconds": 1540540,
              "testRawDataPath": "path-to-output-report-files"
          }
      ]
  }
  ```

# 共有レポートグループのアクセス許可
<a name="report-groups-sharing-perms"></a>

## 所有者のアクセス許可
<a name="report-groups-perms-owner"></a>

レポートグループの所有者は、レポートグループを編集し、プロジェクトで指定してレポートを実行できます。

## コンシューマーのアクセス許可
<a name="report-groups-perms-consumer"></a>

レポートグループのコンシューマーは、レポートグループ、そのレポート、およびレポートのテストケース結果を表示できます。コンシューマーは、レポートグループまたはそのレポートを編集したり、レポートを作成したりすることはできません。