Mengelola Pengguna Amazon DocumentDB - Amazon DocumentDB

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

Mengelola Pengguna Amazon DocumentDB

Di Amazon DocumentDB, pengguna mengautentikasi ke klaster bersama dengan kata sandi. Setiap klaster memiliki kredenatif masuk utama yang dibuat selama pembuatan klaster.

catatan

Semua pengguna baru yang dibuat sebelum 26 Maret 2020 telah diberikan peran dbAdminAnyDatabase, readWriteAnyDatabase, dan clusterAdmin. Sebaiknya Anda mengevaluasi kembali semua pengguna dan mengubah peran seperlunya untuk menerapkan hak istimewa paling sedikit untuk semua pengguna di klaster Anda.

Untuk informasi selengkapnya, lihat Akses Database Menggunakan Kontrol Akses Berbasis Peran.

Primer danserviceadmin Pengguna

Klaster Amazon DocumentDB yang baru dibuat memiliki dua pengguna: pengguna: pengguna utama danserviceadmin pengguna.

Pengguna utama adalah pengguna tunggal dengan hak istimewa yang dapat melakukan tugas administratif dan membuat pengguna tambahan dengan peran. Saat Anda terhubung ke klaster Amazon DocumentDB untuk pertama kalinya, Anda harus mengautentikasi menggunakan kredenial masuk utama. Pengguna utama menerima izin administratif ini untuk klaster Amazon DocumentDB saat klaster tersebut dibuat, dan diberi peranroot.

Pengguna serviceadmin dibuat secara implisit saat klaster dibuat. Setiap klaster Amazon DocumentDB memiliki pengguna serviceadmin yang memberikan AWS kemampuan untuk mengelola klaster Anda. Anda tidak dapat masuk sebagai, menjatuhkan, mengganti nama, mengubah kata sandi, atau mengubah izin untuk serviceadmin. Setiap upaya untuk melakukannya menghasilkan kesalahan.

catatan

Pengguna utama danserviceadmin pengguna untuk klaster Amazon DocumentDB tidak dapat dihapus dan peranroot untuk pengguna utama tidak dapat dicabut.

Jika Anda lupa kata sandi pengguna utama, Anda dapat mengatur ulang kata sandi menggunakanAWS Management Console atauAWS CLI.

Membuat Pengguna Tambahan

Setelah Anda terhubung sebagai pengguna utama (atau pengguna apa pun yang memiliki perancreateUser), Anda dapat membuat pengguna baru, seperti yang ditunjukkan di bawah ini.

db.createUser( { user: "sample-user-1", pwd: "password123", roles: [{"db":"admin", "role":"dbAdminAnyDatabase" }] } )

Untuk melihat detail pengguna, Anda dapat menggunakan perintah show users sebagai berikut. Anda juga dapat menghapus pengguna dengan perintah dropUser. Untuk informasi selengkapnya, lihat Perintah Umum.

show users { "_id" : "serviceadmin", "user" : "serviceadmin", "db" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }, { "_id" : "myPrimaryUser", "user" : "myPrimaryUser", "db" : "admin", "roles" : [ { "role" : "root", "db" : "admin" } ] }, { "_id" : "sample-user-1", "user" : "sample-user-1", "db" : "admin", "roles" : [ { "role" : "dbAdminAnyDatabase", "db" : "admin" } ] }

Dalam contoh di atas, pengguna baru sample-user-1 dikaitkan dengan basis data admin. Hal ini selalu terjadi bagi pengguna baru. Amazon DocumentDB tidak memiliki konsep authenticationDatabase dan dengan demikian semua autentikasi dilakukan dalam konteks basis data admin.

Saat membuat pengguna, jika Anda menghilangkan bidang db saat menentukan peran, Amazon DocumentDB akan secara implisit mengaitkan peran tersebut ke basis data tempat koneksi diterbitkan. Misalnya, jika koneksi Anda dikeluarkan terhadap basis data sample-database dan Anda menjalankan perintah berikut, pengguna sample-user-2 akan dibuat di basis data admin dan akan memiliki izin readWrite ke basis data sample-database.

db.createUser( { user: "sample-user-2", pwd: "password123", roles: ["readWrite"] } )

Membuat pengguna dengan peran yang dicakup di semua basis data (misalnya, readInAnyDatabase) mengharuskan Anda berada dalam konteks basis data admin saat membuat pengguna atau Anda secara eksplisit menyatakan basis data untuk peran saat membuat pengguna.

Untuk mengganti konteks dari basis data Anda, Anda dapat menggunakan perintah berikut.

use admin

Untuk mempelajari selengkapnya tentang Kontrol Akses Berbasis Peran dan menerapkan hak istimewa paling rendah di antara pengguna di klaster Anda, lihat Akses Database Menggunakan Kontrol Akses Berbasis Peran.

Kata Sandi Berputar Otomatis untuk Amazon DocumentDB

Dengan AWS Secrets Manager, Anda dapat mengganti kredensial hardcode dalam kode Anda (termasuk kata sandi) dengan panggilan API ke Secrets Manager untuk mengambil rahasia secara terprogram. Ini membantu memastikan bahwa rahasia tidak dapat dikompromikan oleh seseorang yang memeriksa kode Anda, karena rahasianya tidak ada di sana. Juga, Anda dapat mengonfigurasi Secrets Manager untuk secara otomatis memutar rahasia untuk Anda sesuai dengan jadwal yang Anda tentukan. Ini memungkinkan Anda untuk mengganti rahasia jangka panjang dengan rahasia jangka pendek, yang membantu mengurangi risiko kompromi secara signifikan.

Dengan menggunakan Secrets Manager, Anda dapat secara otomatis memutar kata sandi Amazon DocumentDB Anda (yaitu, rahasia) menggunakan fungsi AWS Lambda yang disediakan oleh Secrets Manager.

Untuk informasi lebih lanjut tentang AWS Secrets Manager dan integrasi asli dengan Amazon DocumentDB, lihat berikut ini: