Arbeiten mit freigegebenen Berichtsgruppen - AWS CodeBuild

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Arbeiten mit freigegebenen Berichtsgruppen

Mithilfe der Berichtsgruppenfreigabe können mehrere AWS-Konten oder Benutzer eine Berichtsgruppe, ihre nicht abgelaufenen Berichte und die Testergebnisse ihrer Berichte anzeigen. In diesem Modell verwendet das Konto, das die Berichtsgruppe besitzt (Eigentümer), eine Berichtsgruppe mit anderen Konten (Verbraucher). Ein Verbraucher kann keine Berichtsgruppe bearbeiten. Ein Bericht läuft 30 Tage nach seiner Erstellung ab.

Voraussetzungen für die Freigabe von Berichtsgruppen

Um eine Berichtsgruppe freizugeben, muss Ihr AWS-Konto Eigentümer dieser Gruppe sein. Sie können keine Berichtsgruppe freigeben, die für Sie freigegeben wurde.

Voraussetzungen für den Zugriff auf für Sie freigegebene Berichtsgruppen

Um auf eine freigegebene Berichtsgruppe zuzugreifen, benötigt die IAM-Rolle eines Verbrauchers die BatchGetReportGroups-Berechtigung. Sie können die folgende Richtlinie an ihre IAM-Rolle anfügen:

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

Weitere Informationen finden Sie unter Verwendung identitätsbasierter Richtlinien für AWS CodeBuild.

Die Berichtsgruppenfreigabe wird mit AWS Resource Access Manager (AWS RAM) integriert, einem Service, der es Ihnen ermöglicht, Ihre AWS-Ressourcen für jedes AWS-Konto oder über AWS Organizations freizugeben. Mit AWS RAM können Sie Ressourcen, deren Eigentümer Sie sind, freigeben, indem Sie eine Ressourcenfreigabe erstellen, die die Ressourcen und die Verbraucher angibt, für die sie freigegeben werden sollen. Verbraucher können einzelne AWS-Konten oder Organisationseinheiten in AWS Organizations oder gesamte Organisationen in AWS Organizations sein.

Weitere Informationen finden Sie im AWS RAM-Leitfaden.

Freigeben einer Berichtsgruppe

Wenn Sie eine Berichtsgruppe freigeben, erhält der Verbraucher schreibgeschützten Zugriff auf die Berichtsgruppe und ihre Berichte. Der Verbraucher kann die AWS CLI verwenden, um die Berichtsgruppe, ihre Berichte und die Testfallergebnisse für jeden Bericht anzuzeigen. Der Verbraucher kann nicht:

  • Eine freigegebene Berichtsgruppe oder ihre Berichte in der CodeBuild-Konsole anzeigen.

  • Eine freigegebene Berichtsgruppe bearbeiten.

  • Den ARN der freigegebenen Berichtsgruppe in einem Projekt verwenden, um einen Bericht auszuführen. Ein Projekt-Build, der eine freigegebene Berichtsgruppe angibt, schlägt fehl.

Sie können die CodeBuild-Konsole verwenden, um einer vorhandenen Ressourcenfreigabe eine Berichtsgruppe hinzuzufügen. Wenn Sie die Berichtsgruppe einer neuen Ressourcenfreigabe hinzufügen möchten, müssen Sie sie zuerst in der AWS RAM-Konsole erstellen.

Um eine Berichtsgruppe für Organisationseinheiten oder eine ganze Organisation freizugeben, müssen Sie die Freigabe für AWS Organizations aktivieren. Weitere Informationen finden Sie unter Freigabe für AWS Organizations aktivieren im AWS RAM-Benutzerhandbuch.

Sie können die CodeBuild-Konsole verwenden,AWS RAM-Konsole oderAWS CLISo geben Sie Berichtsgruppen frei, deren Eigentümer Sie sind.

So geben Sie eine Berichtsgruppe frei, deren Eigentümer Sie sind (CodeBuild-Konsole):
  1. Öffnen SieAWS CodeBuildconsole beihttps://console.aws.amazon.com/codesuite/codebuild/homeaus.

  2. Wählen Sie im Navigationsbereich Report Groups (Berichtsgruppen) aus.

  3. Wählen Sie das Projekt aus, das Sie freigeben möchten, und klicken Sie dann auf Share (Freigeben). Weitere Informationen finden Sie unter Erstellen einer Ressourcenfreigabe im AWS RAM-Benutzerhandbuch.

So geben Sie Berichtsgruppen frei, deren Eigentümer Sie sind (AWS RAM-Konsole):

Siehe .Erstellen einer RessourcenfreigabeimAWS RAM-Benutzerhandbuchaus.

So geben Sie Berichtsgruppen frei, deren Eigentümer Sie sind (AWS RAM-Befehl):

Verwenden Sie den Befehl create-resource-share.

So geben Sie eine Berichtsgruppe frei, deren Eigentümer Sie sind (-Befehl CodeBuild)

Verwenden Sie den Befehl put-resource-policy :

  1. Erstellen Sie eine Datei mit dem Namen policy.json und kopieren Sie Folgendes in diese Datei.

    { "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Principal":{ "AWS":"consumer-aws-account-id-or-user" }, "Action":[ "codebuild:BatchGetReportGroups", "codebuild:BatchGetReports", "codebuild:ListReportsForReportGroup", "codebuild:DescribeTestCases"], "Resource":"arn-of-report-group-to-share" }] }
  2. Aktualisieren Sie policy.json mit dem ARN der Berichtsgruppe und Bezeichnern für die Freigabe. Im folgenden Beispiel wird schreibgeschützter Zugriff auf die Berichtsgruppe mit dem ARN gewährtarn:aws:codebuild:us-west-2:123456789012:report-group/my-report-groupan Alice und den Root-Benutzer für dieAWSKonto identifiziert durch 123456789012.

    { "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" }] }
  3. Führen Sie den folgenden Befehl aus.

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

Aufheben der Freigabe einer freigegebenen Berichtsgruppe

Auf eine nicht mehr freigegebene Berichtsgruppe, einschließlich ihrer Berichte und ihrer Testergebnisse, kann nur der Besitzer zugreifen. Wenn Sie die Freigabe einer Berichtsgruppe aufheben, kann jedes AWS-Konto oder jeder Benutzer, für das/den die Freigabe zuvor galt, nicht mehr auf die Berichtsgruppe, ihre Berichte oder die Ergebnisse von Testfällen in den Berichten zugreifen.

Um die Freigabe eines freigegebenen Berichtsgruppe, deren Eigentümer Sie sind, aufzuheben, müssen Sie sie aus der Ressourcenfreigabe entfernen. Sie können dafür die AWS RAM-Konsole oder AWS CLI verwenden.

So heben Sie die Freigabe einer freigegebenen Berichtsgruppe auf, deren Eigentümer Sie sind (AWS RAM-Konsole):

Siehe Aktualisieren einer Ressourcenfreigabe im AWS RAM-Benutzerhandbuch.

So heben Sie die Freigabe einer freigegebenen Berichtsgruppe auf, deren Eigentümer Sie sind (AWS RAM-Befehl)

Verwenden Sie den Befehl disassociate-resource-share.

So heben Sie die Freigabe der Berichtsgruppe auf, deren Eigentümer CodeBuild -Befehl:

Führen Sie den Befehl delete-resource-policy aus und geben Sie den ARN der Berichtsgruppe an, deren Freigabe Sie aufheben möchten:

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

Identifizieren einer freigegebenen Berichtsgruppe

Eigentümer und Verbraucher können freigegebene Berichtsgruppen mit AWS CLI identifizieren.

Verwenden Sie die folgenden Befehle, um eine freigegebene Berichtsgruppe zu identifizieren und Informationen dazu und zu ihren Berichten abzurufen:

  • Um die ARNs der für Sie freigegebenen Berichtsgruppen anzuzeigen, führen Sie list-shared-report-groups aus:

    aws codebuild list-shared-report-groups
  • Um die ARNs der Berichte in einer Berichtsgruppe anzuzeigen, führen Sie list-reports-for-report-group mit dem ARN der Berichtsgruppe aus:

    aws codebuild list-reports-for-report-group --report-group-arn report-group-arn
  • Um Informationen zu Testfällen in einem Bericht anzuzeigen, führen Sie describe-test-cases mithilfe des ARN des Berichts aus:

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

    Die Ausgabe sollte wie folgt aussehen:

    { "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" } ] }

Berechtigungen für freigegebene Berichtsgruppen

Berechtigungen für Besitzer

Ein Besitzer der Berichtsgruppe kann die Berichtsgruppe bearbeiten und in einem Projekt angeben, um Berichte auszuführen.

Berechtigungen für Konsumenten

Ein Benutzer der Berichtsgruppe kann eine Berichtsgruppe, ihre Berichte und die Testfallergebnisse für die Berichte anzeigen. Ein Verbraucher kann eine Berichtsgruppe oder ihre Berichte nicht bearbeiten und sie nicht zum Erstellen von Berichten verwenden.