View a markdown version of this page

Menggunakan kebijakan berbasis identitas untuk AWS CodeBuild - AWS CodeBuild

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan kebijakan berbasis identitas untuk AWS CodeBuild

Topik ini memberikan contoh kebijakan berbasis identitas yang menunjukkan bagaimana administrator akun dapat melampirkan kebijakan izin ke identitas IAM (yaitu, pengguna, grup, dan peran) dan dengan demikian memberikan izin untuk melakukan operasi AWS CodeBuild sumber daya.

penting

Kami menyarankan Anda terlebih dahulu meninjau topik pengantar yang menjelaskan konsep dasar dan opsi yang tersedia untuk mengelola akses ke CodeBuild sumber daya Anda. Untuk informasi selengkapnya, lihat Ikhtisar pengelolaan izin akses ke AWS CodeBuild sumber daya.

Berikut ini menunjukkan contoh kebijakan izin yang memungkinkan pengguna untuk mendapatkan informasi tentang proyek build hanya di us-east-2 wilayah untuk akun 123456789012 untuk setiap proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetProjects", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izin yang diperlukan untuk menggunakan AWS CodeBuild konsol

Pengguna yang menggunakan AWS CodeBuild konsol harus memiliki kumpulan izin minimum yang memungkinkan pengguna untuk menjelaskan AWS sumber daya lain untuk AWS akun tersebut. Anda harus memiliki izin dari layanan berikut:

  • AWS CodeBuild

  • Amazon CloudWatch

  • CodeCommit (jika Anda menyimpan kode sumber Anda di AWS CodeCommit repositori)

  • Amazon Elastic Container Registry (Amazon ECR) (jika Anda menggunakan lingkungan build yang bergantung pada gambar Docker di repositori Amazon ECR)

    catatan

    Mulai 26 Juli 2022, kebijakan IAM default telah diperbarui. Untuk informasi selengkapnya, lihat Izin diperlukan untuk AWS CodeBuild untuk terhubung ke Amazon Elastic Container Registry.

  • Amazon Elastic Container Service (Amazon ECS) (jika Anda menggunakan lingkungan build yang bergantung pada gambar Docker di repositori Amazon ECR)

  • AWS Identity and Access Management (IAM)

  • AWS Key Management Service (AWS KMS)

  • Amazon Simple Storage Service (Amazon S3)

Jika Anda membuat kebijakan IAM yang lebih ketat dari izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana dimaksudkan.

Izin diperlukan untuk AWS CodeBuild untuk terhubung ke Amazon Elastic Container Registry

Mulai 26 Juli 2022, AWS CodeBuild telah memperbarui kebijakan IAM defaultnya untuk izin Amazon ECR. Izin berikut telah dihapus dari kebijakan default:

"ecr:PutImage", "ecr:InitiateLayerUpload", "ecr:UploadLayerPart", "ecr:CompleteLayerUpload"

Untuk CodeBuild proyek yang dibuat sebelum 26 Juli 2022, kami sarankan Anda memperbarui kebijakan Anda dengan kebijakan Amazon ECR berikut:

"Action": [ "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage" ]

Untuk informasi selengkapnya tentang memperbarui kebijakan Anda, lihatIzinkan pengguna berinteraksi dengan CodeBuild.

Izin diperlukan untuk AWS CodeBuild konsol untuk terhubung ke penyedia sumber

Kon AWS CodeBuild sol menggunakan tindakan API berikut untuk terhubung ke penyedia sumber (misalnya, GitHub repositori).

  • codebuild:ListConnectedOAuthAccounts

  • codebuild:ListRepositories

  • codebuild:PersistOAuthToken

  • codebuild:ImportSourceCredentials

Anda dapat mengaitkan penyedia sumber (seperti GitHub repositori) dengan proyek build menggunakan AWS CodeBuild konsol. Untuk melakukan ini, Anda harus terlebih dahulu menambahkan tindakan API sebelumnya ke kebijakan akses IAM yang terkait dengan pengguna yang Anda gunakan untuk mengakses AWS CodeBuild konsol.

T ListConnectedOAuthAccounts ind ListRepositories akan,, dan PersistOAuthToken API tidak dimaksudkan untuk dipanggil oleh kode Anda. Oleh karena itu, tindakan API ini tidak termasuk dalam AWS CLI dan AWS SDK.

AWS kebijakan yang dikelola (telah ditentukan sebelumnya) untuk AWS CodeBuild

AWS mengatasi banyak kasus penggunaan umum dengan menyediakan kebijakan IAM mandiri yang dibuat dan dikelola oleh AWS. Kebijakan AWS terkelola ini memberikan izin yang diperlukan untuk kasus penggunaan umum sehingga Anda dapat menghindari keharusan menyelidiki izin apa yang diperlukan. Kebijakan terkelola untuk CodeBuild juga memberikan izin untuk melakukan operasi di layanan lain, seperti IAM, AWS CodeCommit, Amazon EC2, Amazon ECR, Amazon SNS, dan Amazon Ev CloudWatch ents, sebagaimana diperlukan untuk tanggung jawab bagi pengguna yang telah diberikan kebijakan tersebut. Misalnya, kebijakan ini adalah AWSCodeBuildAdminAccess kebijakan pengguna tingkat administratif yang memungkinkan pengguna dengan kebijakan ini membuat dan mengelola CloudWatch aturan Acara untuk build proyek dan topik Amazon SNS untuk pemberitahuan tentang peristiwa terkait proyek (topik yang namanya diawali denganarn:aws:codebuild:), serta mengelola proyek dan grup laporan di. CodeBuild Untuk informasi selengkapnya, lihat Kebijakan Terkelola AWS dalam Panduan Pengguna IAM.

Kebijakan ter AWS kelola berikut, yang dapat Anda lampirkan ke pengguna di akun Anda, khusus untuk itu AWS CodeBuild.

AWSCodeBuildAdminAccess

Menyediakan akses penuh CodeBuild untuk menyertakan izin untuk mengelola proyek CodeBuild build.

AWSCodeBuildDeveloperAccess

Menyediakan akses ke CodeBuild tetapi tidak mengizinkan administrasi proyek build.

AWSCodeBuildReadOnlyAccess

Menyediakan akses read-only ke. CodeBuild

Untuk mengakses artefak keluaran build yang CodeBuild dibuat, Anda juga harus melampirkan nama AWS kebijakan terkelolaAmazonS3ReadOnlyAccess.

Untuk membuat dan mengelola peran CodeBuild layanan, Anda juga harus melampirkan kebijakan ter AWS kelola bernamaIAMFullAccess.

Anda juga dapat membuat kebijakan IAM khusus Anda sendiri untuk memberikan izin untuk CodeBuild tindakan dan sumber daya. Anda dapat menyematkan kebijakan khusus ini untuk pengguna atau grup yang memerlukan izin tersebut.

AWSCodeBuildAdminAccess

AWSCodeBuildAdminAccessKebijakan ini menyediakan akses penuh ke CodeBuild, termasuk izin untuk mengelola proyek CodeBuild build. Terapkan kebijakan ini hanya untuk pengguna tingkat administratif untuk memberi mereka kontrol penuh atas CodeBuild proyek, grup laporan, dan sumber daya terkait di AWS akun Anda, termasuk kemampuan untuk menghapus proyek dan grup laporan.

Untuk kebijakan terkelola lengkap, lihat AWSCodeBuildAdminAccess di referensi kebijakan terkelola IAM.

AWSCodeBuildDeveloperAccess

AWSCodeBuildDeveloperAccessKebijakan ini memungkinkan akses ke semua fungsionalitas dan memproy CodeBuild eksikan dan melaporkan sumber daya terkait grup. Kebijakan ini tidak mengizinkan pengguna untuk menghapus CodeBuild proyek atau grup laporan, atau sumber daya terkait di AWS layanan lain, seperti A CloudWatch cara. Kami merekomendasikan bahwa Anda menerapkan kebijakan ini untuk sebagian besar pengguna.

Untuk kebijakan terkelola lengkap, lihat AWSCodeBuildDeveloperAccess di referensi kebijakan terkelola IAM.

AWSCodeBuildReadOnlyAccess

AWSCodeBuildReadOnlyAccessKebijakan ini memberikan akses baca-saja ke CodeBuild dan sumber daya terkait di layanan lain AWS . Terapkan kebijakan ini ke pengguna yang dapat melihat dan menjalankan build, melihat proyek, dan melihat grup laporan, tetapi tidak dapat membuat perubahan apa pun terhadapnya.

Untuk kebijakan terkelola lengkap, lihat AWSCodeBuildReadOnlyAccess di referensi kebijakan terkelola IAM.

CodeBuild kebijakan dan pemberitahuan yang dikelola

CodeBuild mendukung pemberitahuan, yang dapat memberi tahu pengguna tentang perubahan penting untuk membangun proyek. Kebijakan terkelola untuk CodeBuild menyertakan pernyataan kebijakan untuk fungsionalitas notifikasi. Untuk informasi selengkapnya, lihat Apa itu notifikasi?.

Izin yang terkait dengan notifikasi dalam kebijakan terkelola hanya-baca

Kebijakan terkelola AWSCodeBuildReadOnlyAccess mencakup pernyataan berikut untuk mengizinkan akses penuh ke notifikasi. Pengguna yang menerapkan kebijakan terkelola ini dapat melihat pemberitahuan untuk sumber daya, tetapi tidak dapat membuat, mengelola, atau berlangganan ke sumber daya tersebut.

{ "Sid": "CodeStarNotificationsPowerUserAccess", "Effect": "Allow", "Action": [ "codestar-notifications:DescribeNotificationRule" ], "Resource": "*", "Condition" : { "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codebuild:*:*:project/*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListEventTypes", "codestar-notifications:ListTargets" ], "Resource": "*" }

Izin terkait notifikasi dalam kebijakan terkelola lainnya

Kebijakan terkelola AWSCodeBuildDeveloperAccess mencakup pernyataan berikut untuk mengizinkan pengguna membuat, mengedit, dan berlangganan notifikasi. Mereka tidak dapat menghapus aturan notifikasi atau mengelola tag untuk sumber daya.

{ "Sid": "CodeStarNotificationsReadWriteAccess", "Effect": "Allow", "Action": [ "codestar-notifications:CreateNotificationRule", "codestar-notifications:DescribeNotificationRule", "codestar-notifications:UpdateNotificationRule", "codestar-notifications:Subscribe", "codestar-notifications:Unsubscribe" ], "Resource": "*", "Condition" : { "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codebuild:*:*:project/*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListTargets", "codestar-notifications:ListTagsforResource", "codestar-notifications:ListEventTypes" ], "Resource": "*" }, { "Sid": "SNSTopicListAccess", "Effect": "Allow", "Action": [ "sns:ListTopics" ], "Resource": "*" }, { "Sid": "CodeStarNotificationsChatbotAccess", "Effect": "Allow", "Action": [ "chatbot:DescribeSlackChannelConfigurations", "chatbot:ListMicrosoftTeamsChannelConfigurations" ], "Resource": "*" }

Untuk informasi selengkapnya tentang IAM dan notifikasi, lihat Identity and Access Management untuk Pember AWS CodeStar itahuan.

CodeBuild update ke AWS kebijakan terkelola

Lihat detail tentang pembaruan kebijakan AWS terkelola CodeBuild sejak layanan ini mulai melacak perubahan ini. Untuk peringatan otomatis tentang perubahan pada halaman ini, berlangganan umpan RSS diAWS CodeBuild Riwayat dokumen Panduan Pengguna.

Ubah Deskripsi Date

AWSCodeBuildAdminAccessdan AWSCodeBuildDeveloperAccess — Memperbarui kebijakan yang ada

CodeBuild menambahkan ssmmessages:OpenDataChannel izin ke kebijakan ini untuk mendukung debugging build interaktif Session Manager.

AWSCodeBuildDeveloperAccessKebijakan AWSCodeBuildAdminAccess dan sekarang menyertakan ssmmessages:OpenDataChannel tindakan untuk sumber daya sesi Manajer Session (arn:aws:ssm:*:*:session/*) untuk mendukung penegakan SIGv4 pada WebSocket API ini.

Desember 1, 2025

AWSCodeBuildAdminAccess,AWSCodeBuildDeveloperAccess, dan AWSCodeBuildReadOnlyAccess — Memperbarui kebijakan yang ada

CodeBuild memperbarui sumber daya untuk kebijakan ini.

KebijakanAWSCodeBuildAdminAccess,AWSCodeBuildDeveloperAccess, dan AWSCodeBuildReadOnlyAccess telah diubah untuk memperbarui sumber daya yang ada. Sumber daya asli arn:aws:codebuild:* telah diperbarui kearn:aws:codebuild:*:*:project/*.

November 15, 2024

AWSCodeBuildAdminAccess,AWSCodeBuildDeveloperAccess, dan AWSCodeBuildReadOnlyAccess — Memperbarui kebijakan yang ada

CodeBuild menambahkan sumber daya ke kebijakan ini untuk mendukung AWS CodeConnections rebranding.

KebijakanAWSCodeBuildAdminAccess,AWSCodeBuildDeveloperAccess, dan AWSCodeBuildReadOnlyAccess telah diubah untuk menambahkan sumber daya,arn:aws:codeconnections:*:*:*.

April 18, 2024

AWSCodeBuildAdminAccessdan AWSCodeBuildDeveloperAccess — Memperbarui kebijakan yang ada

CodeBuild menambahkan izin ke kebijakan ini untuk mendukung jenis notifikasi tambahan menggunakan Amazon Q Developer di aplikasi obrolan.

AWSCodeBuildDeveloperAccessKebijakan AWSCodeBuildAdminAccess dan telah diubah untuk menambahkan izin,chatbot:ListMicrosoftTeamsChannelConfigurations.

Mei 16, 2023

CodeBuild mulai melacak perubahan

CodeBuild mulai melacak perubahan untuk kebijakan yang AWS dikelolanya.

Mei 16, 2021

Customer-managed contoh kebijakan

Di bagian ini, Anda dapat menemukan contoh kebijakan pengguna yang memberikan izin untuk AWS CodeBuild tindakan. Kebijakan ini berfungsi saat Anda menggunakan CodeBuild API, AWS SDK, atau AWS CLI. Saat menggunakan konsol, Anda harus memberikan izin tambahan khusus konsol. Untuk informasi, lihat Izin yang diperlukan untuk menggunakan AWS CodeBuild konsol.

Anda dapat menggunakan contoh kebijakan IAM berikut untuk membatasi CodeBuild akses bagi pengguna dan peran Anda.

Topik

Izinkan pengguna untuk mendapatkan informasi tentang membangun proyek

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang membangun proyek di Wil us-east-2 ayah untuk akun 123456789012 untuk setiap proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetProjects", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izinkan pengguna untuk mendapatkan informasi tentang armada

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang armada di Wil us-east-2 ayah untuk akun: 123456789012

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetFleets", "Resource": "arn:aws:codebuild:us-east-2:111122223333:fleet/*" } ] }

Izinkan pengguna untuk mendapatkan informasi tentang grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetReportGroups", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk mendapatkan informasi tentang laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetReports", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk membuat proyek build

Contoh pernyataan kebijakan berikut memungkinkan pengguna membuat proyek build dengan nama apa pun tetapi hanya di Wil us-east-2 ayah untuk akun 123456789012 dan hanya menggunakan peran CodeBuild layanan yang ditentukan:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateProject", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/CodeBuildServiceRole" } ] }

Contoh pernyataan kebijakan berikut memungkinkan pengguna membuat proyek build dengan nama apa pun tetapi hanya di Wil us-east-2 ayah untuk akun 123456789012 dan hanya menggunakan peran CodeBuild layanan yang ditentukan. Ini juga menegakkan bahwa pengguna hanya dapat menggunakan peran layanan yang ditentukan dengan AWS CodeBuild dan bukan AWS layanan lainnya.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateProject", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/CodeBuildServiceRole", "Condition": { "StringEquals": {"iam:PassedToService": "codebuild.amazonaws.com"} } } ] }

Izinkan pengguna membuat armada

Contoh pernyataan kebijakan berikut memungkinkan pengguna membuat armada di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateFleet", "Resource": "arn:aws:codebuild:us-east-2:111122223333:fleet/*" } ] }

Mengizinkan pengguna membuat grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna membuat grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:CreateReportGroup", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna menghapus armada

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk menghapus armada di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:DeleteFleet", "Resource": "arn:aws:codebuild:us-east-2:111122223333:fleet/*" } ] }

Mengizinkan pengguna untuk menghapus grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk menghapus grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:DeleteReportGroup", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Mengizinkan pengguna untuk menghapus laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk menghapus laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:DeleteReport", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk menghapus proyek build

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk menghapus proyek build di Wil us-east-2 ayah untuk akun 123456789012 untuk setiap proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:DeleteProject", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izinkan pengguna untuk mendapatkan daftar nama proyek build

Contoh pernyataan kebijakan berikut memungkinkan pengguna mendapatkan daftar nama proyek build untuk akun yang sama:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListProjects", "Resource": "*" } ] }

Izinkan pengguna untuk mengubah informasi tentang membangun proyek

Contoh pernyataan kebijakan berikut memungkinkan pengguna mengubah informasi tentang membangun proyek dengan nama apa pun tetapi hanya di Wil us-east-2 ayah untuk akun 123456789012 dan hanya menggunakan peran AWS CodeBuild layanan yang ditentukan:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:UpdateProject", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/CodeBuildServiceRole" } ] }

Izinkan pengguna untuk mengubah armada

Contoh pernyataan kebijakan berikut memungkinkan pengguna mengubah armada di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:UpdateFleet", "Resource": "arn:aws:codebuild:us-east-2:111122223333:fleet/*" } ] }

Mengizinkan pengguna untuk mengubah grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna mengubah grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:UpdateReportGroup", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk mendapatkan informasi tentang build

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang build di Wil us-east-2 ayah untuk akun 123456789012 untuk proyek build bernama my-build-project danmy-other-build-project:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchGetBuilds", "Resource": [ "arn:aws:codebuild:us-east-2:111122223333:project/my-build-project", "arn:aws:codebuild:us-east-2:111122223333:project/my-other-build-project" ] } ] }

Izinkan pengguna untuk mendapatkan daftar ID build untuk proyek build

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan daftar ID build di Wil us-east-2 ayah untuk akun 123456789012 untuk proyek build bernama my-build-project danmy-other-build-project:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListBuildsForProject", "Resource": [ "arn:aws:codebuild:us-east-2:111122223333:project/my-build-project", "arn:aws:codebuild:us-east-2:111122223333:project/my-other-build-project" ] } ] }

Izinkan pengguna untuk mendapatkan daftar ID build

Contoh pernyataan kebijakan berikut memungkinkan pengguna mendapatkan daftar semua ID build untuk akun yang sama:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListBuilds", "Resource": "*" } ] }

Izinkan pengguna untuk mendapatkan daftar armada

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan daftar armada di Wil us-east-2 ayah untuk akun: 123456789012

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListFleets", "Resource": "*" } ] }

Izinkan pengguna untuk mendapatkan daftar grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan daftar grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListReportGroups", "Resource": "*" } ] }

Izinkan pengguna untuk mendapatkan daftar laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan daftar laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListReports", "Resource": "*" } ] }

Mengizinkan pengguna untuk mendapatkan daftar laporan untuk grup laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan daftar laporan untuk grup laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListReportsForReportGroup", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk mendapatkan daftar kasus uji untuk laporan

Contoh pernyataan kebijakan berikut memungkinkan pengguna mendapatkan daftar kasus uji untuk laporan di Wil us-east-2 ayah untuk akun123456789012:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:DescribeTestCases", "Resource": "arn:aws:codebuild:us-east-2:111122223333:report-group/*" } ] }

Izinkan pengguna untuk mulai menjalankan build

Contoh pernyataan kebijakan berikut memungkinkan pengguna menjalankan build di Wil us-east-2 ayah untuk akun 123456789012 untuk proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:StartBuild", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izinkan pengguna untuk mencoba menghentikan build

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mencoba menghentikan menjalankan build hanya di us-east-2 wilayah untuk akun 123456789012 untuk setiap proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:StopBuild", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izinkan pengguna untuk mencoba menghapus build

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mencoba menghapus build hanya di Wil us-east-2 ayah untuk akun 123456789012 untuk setiap proyek build yang dimulai dengan namamy:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:BatchDeleteBuilds", "Resource": "arn:aws:codebuild:us-east-2:111122223333:project/my*" } ] }

Izinkan pengguna untuk mendapatkan informasi tentang gambar Docker yang dikelola oleh CodeBuild

Contoh pernyataan kebijakan berikut memungkinkan pengguna untuk mendapatkan informasi tentang semua gambar Docker yang dikelola oleh: CodeBuild

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codebuild:ListCuratedEnvironmentImages", "Resource": "*" } ] }

Mengizinkan pengguna menambahkan kebijakan izin untuk peran layanan armada

Contoh pernyataan kebijakan sumber daya berikut memungkinkan pengguna menambahkan kebijakan izin VPC untuk peran layanan armada:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "CodeBuildFleetVpcCreateNI", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:us-west-2:111122223333:subnet/subnet-id-1", "arn:aws:ec2:us-west-2:111122223333:security-group/security-group-id-1", "arn:aws:ec2:us-west-2:111122223333:network-interface/*" ] }, { "Sid": "CodeBuildFleetVpcPermission", "Effect": "Allow", "Action": [ "ec2:DescribeDhcpOptions", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:ModifyNetworkInterfaceAttribute", "ec2:DeleteNetworkInterface" ], "Resource": "*" }, { "Sid": "CodeBuildFleetVpcNIPermission", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterfacePermission" ], "Resource": "arn:aws:ec2:us-west-2:111122223333:network-interface/*", "Condition": { "StringEquals": { "ec2:Subnet": [ "arn:aws:ec2:us-west-2:111122223333:subnet/subnet-id-1" ] } } } ] }

Contoh pernyataan kebijakan sumber daya berikut memungkinkan pengguna menambahkan kebijakan izin Amazon Managed Image (AMI) khusus untuk peran layanan armada:

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

Contoh pernyataan kebijakan kepercayaan berikut memungkinkan pengguna menambahkan kebijakan izin untuk peran layanan armada:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "CodeBuildFleetVPCTrustPolicy", "Effect": "Allow", "Principal": { "Service": "codebuild.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" } } } ] }

Izinkan CodeBuild akses ke AWS layanan yang diperlukan untuk membuat antarmuka jaringan VPC

Contoh pernyataan kebijakan berikut memberikan AWS CodeBuild izin untuk membuat antarmuka jaringan di VPC dengan dua subnet:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DescribeDhcpOptions", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterfacePermission" ], "Resource": "arn:aws:ec2:us-west-2:111122223333:network-interface/*", "Condition": { "StringEquals": { "ec2:AuthorizedService": "codebuild.amazonaws.com" }, "ArnEquals": { "ec2:Subnet": [ "arn:aws:ec2:us-west-2:111122223333:subnet/subnet-id-1", "arn:aws:ec2:us-west-2:111122223333:subnet/subnet-id-2" ] } } } ] }

Gunakan pernyataan tolak untuk mencegah AWS CodeBuild dari memutuskan sambungan dari penyedia sumber

Contoh pernyataan kebijakan berikut menggunakan pernyataan tolak untuk mencegah pemut AWS CodeBuild usan hubungan dari penyedia sumber. Ini menggunakancodebuild:DeleteOAuthToken, yang merupakan kebalikan dari codebuild:PersistOAuthToken dancodebuild:ImportSourceCredentials, untuk terhubung dengan penyedia sumber. Untuk informasi selengkapnya, lihat Izin diperlukan untuk AWS CodeBuild konsol untuk terhubung ke penyedia sumber.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "codebuild:DeleteOAuthToken", "Resource": "*" } ] }