Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen identitas dan akses untuk AWS Database Migration Service
AWS Identity and Access Management(IAM) adalah Layanan AWS yang membantu administrator mengontrol akses ke AWS sumber daya dengan aman. Administrator IAM mengontrol siapa yang dapat diautentikasi (masuk) dan diberi wewenang (memiliki izin) untuk menggunakan sumber daya. AWS DMS IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.
Topik
Audiens
Cara Anda menggunakan AWS Identity and Access Management (IAM) berbeda berdasarkan peran Anda:
-
Pengguna layanan - minta izin dari administrator Anda jika Anda tidak dapat mengakses fitur (lihat Memecahkan masalah AWS Database Migration Service identitas dan akses)
-
Administrator layanan - tentukan akses pengguna dan mengirimkan permintaan izin (lihat Bagaimana AWS Database Migration Service bekerja dengan IAM)
-
Administrator IAM - tulis kebijakan untuk mengelola akses (lihat AWS Database Migration Servicecontoh kebijakan berbasis identitas)
Mengautentikasi dengan identitas
Otentikasi adalah cara Anda masuk AWS menggunakan kredensyal identitas Anda. Anda harus diautentikasi sebagaiPengguna root akun AWS, pengguna IAM, atau dengan mengasumsikan peran IAM.
Anda dapat masuk sebagai identitas federasi menggunakan kredensil dari sumber identitas seperti AWS IAM Identity Center (Pusat Identitas IAM), autentikasi masuk tunggal, atau kredensional. Google/Facebook Untuk informasi selengkapnya tentang cara masuk, lihat Cara masuk ke Akun AWS Anda dalam Panduan Pengguna AWS Sign-In.
Untuk akses terprogram, AWS sediakan SDK dan CLI untuk menandatangani permintaan secara kriptografis. Untuk informasi selengkapnya, lihat AWS Signature Version 4 untuk permintaan API dalam Panduan Pengguna IAM.
Akun AWSpengguna root
Saat Anda membuatAkun AWS, Anda mulai dengan satu identitas masuk yang disebut pengguna Akun AWS root yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensial pengguna root, lihat Tugas yang memerlukan kredensial pengguna root dalam Panduan Pengguna IAM.
Pengguna dan grup IAM
Pengguna IAM adalah identitas dengan izin khusus untuk satu orang atau aplikasi. Sebaiknya gunakan kredensial sementara alih-alih pengguna IAM dengan kredensial jangka panjang. Untuk informasi selengkapnya, lihat Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensyal sementara di Panduan Pengguna IAM.
Grup IAM menentukan kumpulan pengguna IAM dan mempermudah pengelolaan izin untuk pengguna dalam jumlah besar. Untuk mempelajari selengkapnya, lihat Kasus penggunaan untuk pengguna IAM dalam Panduan Pengguna IAM.
Peran IAM
Peran IAM adalah identitas dengan izin khusus yang menyediakan kredensial sementara. Anda dapat mengambil peran dengan beralih dari pengguna ke peran IAM (konsol) atau dengan memanggil operasi AWS CLI atau AWS API. Untuk informasi selengkapnya, lihat Metode untuk mengambil peran dalam Panduan Pengguna IAM.
Peran IAM berguna untuk akses pengguna gabungan, izin pengguna IAM sementara, akses lintas akun, akses lintas layanan, dan aplikasi yang berjalan di Amazon. EC2 Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM dalam Panduan Pengguna IAM.
Mengelola akses menggunakan kebijakan
Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan menentukan izin saat dikaitkan dengan identitas atau sumber daya. AWSmengevaluasi kebijakan ini ketika kepala sekolah membuat permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang dokumen kebijakan JSON, lihat Gambaran umum kebijakan JSON dalam Panduan Pengguna IAM.
Menggunakan kebijakan, administrator menentukan siapa yang memiliki akses ke apa dengan mendefinisikan principal mana yang dapat melakukan tindakan pada sumber daya apa, dan dalam kondisi apa.
Secara default, pengguna dan peran tidak memiliki izin. Administrator IAM membuat kebijakan IAM dan menambahkannya ke peran, yang kemudian dapat diambil oleh pengguna. Kebijakan IAM mendefinisikan izin terlepas dari metode yang Anda gunakan untuk melakukan operasinya.
Kebijakan berbasis identitas
Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang Anda lampirkan ke identitas (pengguna, grup, atau peran). Kebijakan ini mengontrol tindakan apa yang bisa dilakukan oleh identitas tersebut, terhadap sumber daya yang mana, dan dalam kondisi apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan yang dikelola pelanggan dalam Panduan Pengguna IAM.
Kebijakan berbasis identitas dapat berupa kebijakan inline (disematkan langsung ke dalam satu identitas) atau kebijakan terkelola (kebijakan mandiri yang dilampirkan pada banyak identitas). Untuk mempelajari cara memilih antara kebijakan terkelola dan kebijakan inline, lihat Pilih antara kebijakan terkelola dan kebijakan inline dalam Panduan Pengguna IAM.
Kebijakan berbasis sumber daya
Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contohnya termasuk kebijakan kepercayaan peran IAM dan kebijakan bucket Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Anda harus menentukan principal dalam kebijakan berbasis sumber daya.
Kebijakan berbasis sumber daya merupakan kebijakan inline yang terletak di layanan tersebut. Anda tidak dapat menggunakan kebijakan AWS terkelola dari IAM dalam kebijakan berbasis sumber daya.
Daftar kontrol akses (ACLs)
Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.
Amazon S3,AWS WAF, dan Amazon VPC adalah contoh layanan yang mendukung. ACLs Untuk mempelajari selengkapnya ACLs, lihat Ringkasan daftar kontrol akses (ACL) di Panduan Pengembang Layanan Penyimpanan Sederhana Amazon.
Jenis-jenis kebijakan lain
AWSmendukung jenis kebijakan tambahan yang dapat menetapkan izin maksimum yang diberikan oleh jenis kebijakan yang lebih umum:
-
Batasan izin – Menetapkan izin maksimum yang dapat diberikan oleh kebijakan berbasis identitas kepada entitas IAM. Untuk informasi selengkapnya, lihat Batasan izin untuk entitas IAM dalam Panduan Pengguna IAM.
-
Kebijakan kontrol layanan (SCPs) — Tentukan izin maksimum untuk organisasi atau unit organisasi diAWS Organizations. Untuk informasi selengkapnya, lihat Kebijakan kontrol layanan dalam Panduan Pengguna AWS Organizations.
-
Kebijakan kontrol sumber daya (RCPs) — Tetapkan izin maksimum yang tersedia untuk sumber daya di akun Anda. Untuk informasi selengkapnya, lihat Kebijakan kontrol sumber daya (RCPs) di Panduan AWS Organizations Pengguna.
-
Kebijakan sesi – Kebijakan lanjutan yang diteruskan sebagai parameter saat membuat sesi sementara untuk peran atau pengguna terfederasi. Untuk informasi selengkapnya, lihat Kebijakan sesi dalam Panduan Pengguna IAM.
Berbagai jenis kebijakan
Ketika beberapa jenis kebijakan berlaku pada suatu permintaan, izin yang dihasilkan lebih rumit untuk dipahami. Untuk mempelajari cara AWS menentukan apakah akan mengizinkan permintaan saat beberapa jenis kebijakan terlibat, lihat Logika evaluasi kebijakan di Panduan Pengguna IAM.
Izin IAM diperlukan untuk menggunakan AWS DMS
Anda menggunakan izin IAM tertentu dan IAM role untuk menggunakan AWS DMS. Jika Anda masuk sebagai pengguna IAM dan ingin menggunakannyaAWS DMS, administrator akun Anda harus melampirkan kebijakan yang dibahas di bagian ini ke pengguna, grup, atau peran IAM yang Anda gunakan untuk menjalankan. AWS DMS Untuk informasi lebih lanjut tentang izin IAM, lihat Panduan Pengguna IAM.
Kebijakan berikut memberi Anda akses keAWS DMS, dan juga izin untuk tindakan tertentu yang diperlukan dari layanan Amazon lainnya sepertiAWS KMS, IAM, Amazon EC2, dan Amazon. CloudWatch CloudWatchmemantau AWS DMS migrasi Anda secara real time dan mengumpulkan serta melacak metrik yang menunjukkan kemajuan migrasi Anda. Anda dapat menggunakan CloudWatch Log untuk men-debug masalah dengan tugas.
catatan
Anda selanjutnya dapat membatasi akses ke AWS DMS sumber daya menggunakan penandaan. Untuk informasi selengkapnya tentang membatasi akses ke AWS DMS sumber daya menggunakan penandaan, lihat. Kontrol akses detail menggunakan nama sumber daya dan tag
Perincian izin berikut ini dapat membantu Anda lebih memahami mengapa masing-masing izin diperlukan.
Bagian berikut diperlukan untuk memungkinkan pengguna memanggil operasi AWS DMS API.
{ "Effect": "Allow", "Action": "dms:*", "Resource": "arn:aws:dms:region:account:resourcetype/id" }
Bagian berikut diperlukan untuk memungkinkan pengguna mencantumkan AWS KMS kunci dan alias yang tersedia untuk ditampilkan di konsol. Entri ini tidak diperlukan jika Anda mengetahui Nama Sumber Daya Amazon (ARN) untuk kunci KMS dan Anda hanya menggunakan (). AWS Command Line Interface AWS CLI
{ "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:DescribeKey" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }
Bagian berikut ini diperlukan untuk jenis titik akhir tertentu yang memerlukan ARN IAM role untuk diteruskan dengan titik akhir. Selain itu, jika AWS DMS peran yang diperlukan tidak dibuat sebelumnya, AWS DMS konsol dapat membuat peran. Jika semua peran dikonfigurasi sebelumnya, yang diperlukan adalah iam:GetRole dan iam:PassRole. Untuk informasi lebih lanjut tentang peran, lihat Membuat peran IAM untuk digunakan dengan AWS DMS.
{ "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }
Bagian berikut diperlukan karena AWS DMS perlu membuat EC2 instance Amazon dan mengkonfigurasi jaringan untuk instance replikasi yang dibuat. Sumber daya ini ada di akun pelanggan, sehingga kemampuan untuk melakukan tindakan ini atas nama pelanggan diperlukan.
{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "ec2:DescribeInternetGateways", "ec2:DescribeAvailabilityZones", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:ModifyNetworkInterfaceAttribute", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }
Bagian berikut diperlukan untuk mengizinkan pengguna untuk dapat melihat metrik instans replikasi.
{ "Effect": "Allow", "Action": [ "cloudwatch:Get*", "cloudwatch:List*" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }
Bagian ini diperlukan untuk mengizinkan pengguna untuk melihat log replikasi.
{ "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:FilterLogEvents", "logs:GetLogEvents" ], "Resource": "arn:aws:service:region:account:resourcetype/id" }
Jika Anda menggunakan AWS DMS konsol, AWS Command Line Interface (AWS CLI) atau AWS DMS API untuk migrasi, Anda perlu menambahkan beberapa peran ke akun Anda. Untuk informasi lebih lanjut tentang menambahkan peran ini, lihat Membuat peran IAM untuk digunakan dengan AWS DMS.
Membuat peran IAM untuk digunakan dengan AWS DMS
Jika Anda menggunakan AWS DMS konsol, AWS CLI atau AWS DMS API untuk migrasi database, Anda harus menambahkan tiga peran IAM ke AWS akun Anda sebelum dapat menggunakan fiturAWS DMS. Dua dari peran tersebut adalah dms-vpc-role dan dms-cloudwatch-logs-role. Jika Anda menggunakan Amazon Redshift sebagai database target, Anda juga harus menambahkan peran IAM dms-access-for-endpoint ke akun Anda. AWS
Pembaruan untuk kebijakan terkelola otomatis. Jika Anda menggunakan kebijakan kustom dengan IAM role, pastikan untuk secara berkala memeriksa pembaruan untuk kebijakan terkelola dalam dokumentasi ini. Anda dapat melihat detail kebijakan terkelola dengan menggunakan kombinasi perintah get-policy dan get-policy-version.
Sebagai contoh, perintah get-policy mengambil informasi tentang IAM role yang ditentukan.
aws iam get-policy --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole
Informasi yang dikembalikan dari perintah adalah sebagai berikut.
{ "Policy": { "PolicyName": "AmazonDMSVPCManagementRole", "PolicyId": "ANPAJHKIGMBQI4AEFFSYO", "Arn": "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole", "Path": "/service-role/", "DefaultVersionId": "v4", "AttachmentCount": 1, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "Description": "Provides access to manage VPC settings for AWS managed customer configurations", "CreateDate": "2015-11-18T16:33:19+00:00", "UpdateDate": "2024-07-25T15:19:01+00:00", "Tags": [] } }
Perintah get-policy-version berikut mengambil informasi kebijakan IAM.
aws iam get-policy-version --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole --version-id v4
Informasi yang dikembalikan dari perintah adalah sebagai berikut.
Anda dapat menggunakan perintah yang sama untuk mendapatkan informasi tentang kebijakan terkelola AmazonDMSCloudWatchLogsRole dan AmazonDMSRedshiftS3Role.
Prosedur berikut membuat IAM role dms-vpc-role, dms-cloudwatch-logs-role, dan dms-access-for-endpoint.
Untuk membuat peran dms-vpc-role IAM untuk digunakan dengan AWS CLI atau API AWS DMS
-
Membuat file JSON dengan kebijakan IAM berikut. Beri nama file JSON
dmsAssumeRolePolicyDocument.json.Buat peran menggunakan AWS CLI menggunakan perintah berikut.
aws iam create-role --role-name dms-vpc-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument.json -
Lampirkan kebijakan
AmazonDMSVPCManagementRolekedms-vpc-rolemenggunakan perintah berikut ini.aws iam attach-role-policy --role-name dms-vpc-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole
Untuk membuat peran dms-cloudwatch-logs-role IAM untuk digunakan dengan AWS CLI atau API AWS DMS
-
Membuat file JSON dengan kebijakan IAM berikut. Beri nama file JSON
dmsAssumeRolePolicyDocument2.json.Buat peran menggunakan AWS CLI menggunakan perintah berikut.
aws iam create-role --role-name dms-cloudwatch-logs-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument2.json -
Lampirkan kebijakan
AmazonDMSCloudWatchLogsRolekedms-cloudwatch-logs-rolemenggunakan perintah berikut ini.aws iam attach-role-policy --role-name dms-cloudwatch-logs-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole
Jika Anda menggunakan Amazon Redshift sebagai basis data target Anda, Anda harus membuat IAM role dms-access-for-endpoint untuk menyediakan akses ke Amazon S3.
Untuk membuat peran dms-access-for-endpoint IAM untuk digunakan dengan Amazon Redshift sebagai database target
-
Membuat file JSON dengan kebijakan IAM berikut. Beri nama file JSON
dmsAssumeRolePolicyDocument3.json. -
Buat peran menggunakan AWS CLI menggunakan perintah berikut.
aws iam create-role --role-name dms-access-for-endpoint --assume-role-policy-document file://dmsAssumeRolePolicyDocument3.json -
Lampirkan kebijakan
AmazonDMSRedshiftS3Roleke perandms-access-for-endpointmenggunakan perintah berikut ini.aws iam attach-role-policy --role-name dms-access-for-endpoint \ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role
Anda sekarang harus memiliki kebijakan IAM untuk menggunakan AWS CLI atau AWS DMS API.