Opsi untuk memberikan IAM kredensi - Amazon Redshift

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

Opsi untuk memberikan IAM kredensi

Untuk memberikan IAM kredensi untuk ODBC koneksi JDBC atau, pilih salah satu opsi berikut.

  • AWS profil

    Sebagai alternatif untuk memberikan nilai kredensional dalam bentuk JDBC atau ODBC pengaturan, Anda dapat menempatkan nilai dalam profil bernama. Untuk informasi selengkapnya, lihat Menggunakan profil konfigurasi.

  • IAMkredensi

    Berikan nilai untuk AccessKey ID, SecretAccessKey, dan, secara opsional, SessionToken dalam bentuk JDBC atau ODBC pengaturan. SessionToken diperlukan hanya untuk IAM peran dengan kredensi sementara. Untuk informasi selengkapnya, lihat JDBCdan ODBC opsi untuk memberikan IAM kredensyal.

  • Federasi penyedia identitas

    Saat Anda menggunakan federasi penyedia identitas untuk mengaktifkan pengguna dari penyedia identitas untuk mengautentikasi ke Amazon Redshift, tentukan nama plugin penyedia kredensi. Untuk informasi selengkapnya, lihat Plugin penyedia kredensial.

    Amazon Redshift JDBC dan ODBC driver menyertakan plugin untuk penyedia kredensi federasi identitas SAML berbasis berikut:

    • Layanan Federasi Identitas Aktif Microsoft (AD FS)

    • PingOne

    • Okta

    • Microsoft Azure Active Directory (Azure AD)

    Anda dapat memberikan nama plugin dan nilai terkait dalam bentuk JDBC atau ODBC pengaturan atau dengan menggunakan profil. Untuk informasi selengkapnya, lihat Opsi untuk konfigurasi JDBC driver versi 2.1.

Untuk informasi selengkapnya, lihat Langkah 5: Konfigurasikan JDBC atau ODBC koneksi untuk menggunakan IAM kredensional.

Menggunakan profil konfigurasi

Anda dapat menyediakan opsi dan GetClusterCredentials opsi IAM kredensional sebagai pengaturan di profil bernama di file AWS konfigurasi Anda. Untuk memberikan nama profil, gunakan JDBC opsi Profil. Konfigurasi disimpan dalam file bernama config atau file bernama credentials dalam folder bernama .aws di direktori home Anda.

Untuk plugin penyedia kredensi SAML berbasis yang disertakan dengan Amazon JDBC Redshift ODBC atau driver, Anda dapat menggunakan pengaturan yang dijelaskan sebelumnya. Plugin penyedia kredensial Jika plugin_name tidak digunakan, opsi lain diabaikan.

Contoh berikut menunjukkan file ~/.aws/credentials dengan dua profil.

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user2] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY session_token=AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==

Untuk menggunakan kredensi user2 sebagai contoh, tentukan Profile=user2 di. JDBC URL

Untuk informasi selengkapnya tentang penggunaan profil, lihat Pengaturan konfigurasi dan file kredensi di Panduan AWS Command Line Interface Pengguna.

Untuk informasi lebih lanjut tentang menggunakan profil untuk JDBC pengemudi, lihatMenentukan profil.

Untuk informasi lebih lanjut tentang menggunakan profil untuk ODBC pengemudi, lihatMetode otentikasi.

JDBCdan ODBC opsi untuk memberikan IAM kredensyal

Tabel berikut mencantumkan ODBC opsi JDBC dan untuk menyediakan IAM kredensional.

Opsi

Deskripsi

Iam

Untuk digunakan hanya dalam string ODBC koneksi. Setel ke 1 untuk menggunakan IAM otentikasi.

AccessKeyID

SecretAccessKey

SessionToken

ID kunci akses dan kunci akses rahasia untuk IAM peran atau pengguna yang dikonfigurasi untuk otentikasi IAM database. SessionTokendiperlukan hanya untuk IAM peran dengan kredensi sementara. SessionToken tidak digunakan untuk pengguna. Untuk informasi selengkapnya, lihat Kredensyal Keamanan Sementara.
plugin_name Nama kelas yang sepenuhnya memenuhi syarat yang mengimplementasikan penyedia kredensyal. JDBCDriver Amazon Redshift menyertakan plugin penyedia kredensi SAML berbasis. Jika Anda menyediakanplugin_name, Anda juga dapat memberikan opsi terkait lainnya. Untuk informasi selengkapnya, lihat Plugin penyedia kredensial.

Profile

Nama profil dalam file AWS kredensial atau konfigurasi yang berisi nilai untuk opsi koneksi. JDBC Untuk informasi selengkapnya, lihat Menggunakan profil konfigurasi.

JDBCdan ODBC opsi untuk membuat kredensyal pengguna basis data

Untuk menggunakan Amazon Redshift JDBC atau ODBC driver untuk membuat kredenal pengguna database, berikan nama pengguna database sebagai opsi atau. JDBC ODBC Secara opsional, Anda dapat meminta driver membuat pengguna database baru jika tidak ada, dan Anda dapat menentukan daftar grup pengguna database yang bergabung dengan pengguna saat login.

Jika Anda menggunakan penyedia identitas (iDP), bekerjalah dengan administrator iDP Anda untuk menentukan nilai yang benar untuk opsi ini. Administrator iDP Anda juga dapat mengonfigurasi IDP Anda untuk menyediakan opsi ini, dalam hal ini Anda tidak perlu menyediakannya sebagai atau opsi. JDBC ODBC Untuk informasi selengkapnya, lihat Langkah 2: Konfigurasikan SAML pernyataan untuk IDP Anda.

catatan

Jika Anda menggunakan variabel IAM kebijakan${redshift:DbUser}, seperti Kebijakan sumber daya untuk GetClusterCredentials yang dijelaskan dalam nilai untuk DbUser diganti dengan nilai yang diambil oleh konteks permintaan API operasi. Driver Amazon Redshift menggunakan nilai untuk DbUser variabel yang disediakan oleh koneksiURL, bukan nilai yang diberikan sebagai SAML atribut.

Untuk membantu mengamankan konfigurasi ini, sebaiknya gunakan kondisi dalam IAM kebijakan untuk memvalidasi DbUser nilai dengan. RoleSessionName Anda dapat menemukan contoh cara menyetel kondisi menggunakan IAM kebijakan diContoh kebijakan untuk menggunakan GetClusterCredentials.

Tabel berikut mencantumkan opsi untuk membuat kredensi pengguna database.

Opsi

Deskripsi
DbUser

Nama pengguna database. Jika pengguna bernama DbUser ada dalam database, kredensi pengguna sementara memiliki izin yang sama dengan pengguna yang ada. Jika DbUser tidak ada dalam database dan AutoCreate benar, nama pengguna baru DbUser dibuat. Secara opsional, nonaktifkan kata sandi untuk pengguna yang ada. Untuk informasi lebih lanjut, lihat ALTER_ USER

AutoCreate

Tentukan true untuk membuat pengguna database dengan nama yang ditentukan untuk DbUser jika tidak ada. Default-nya adalah salah.

DbGroups Daftar yang dibatasi koma dari nama-nama dari satu atau lebih kelompok database yang ada yang bergabung dengan pengguna database untuk sesi saat ini. Secara default, pengguna baru hanya ditambahkan kePUBLIC.

Plugin penyedia kredensial

Amazon Redshift menggunakan plugin penyedia kredensial untuk autentikasi masuk tunggal.

Untuk mendukung otentikasi masuk tunggal, Amazon Redshift menyediakan plugin Azure AD untuk Microsoft Azure Active Directory. Untuk informasi tentang cara mengkonfigurasi plugin ini, lihatMenyiapkan JDBC atau ODBC otentikasi masuk tunggal.

Autentikasi multi-faktor

Untuk mendukung otentikasi multi-faktor (MFA), Amazon Redshift menyediakan plugin berbasis browser. Gunakan SAML plugin browser untuk Okta, PingOne, dan plugin browser Azure AD untuk Microsoft Azure Active Directory.

Dengan SAML plugin browser, OAuth otentikasi mengalir seperti ini:

OAuthalur kerja untuk bagaimana plugin, server lokal, browser web, dan titik akhir bekerja sama untuk mengautentikasi pengguna dengan otentikasi. SAML
  1. Seorang pengguna mencoba masuk.

  2. Plugin meluncurkan server lokal untuk mendengarkan koneksi masuk di localhost.

  3. Plugin meluncurkan browser web untuk meminta SAML respons HTTPS dari titik akhir penyedia identitas URL federasi login masuk tunggal yang ditentukan.

  4. Browser web mengikuti tautan dan meminta pengguna untuk memasukkan kredensyal.

  5. Setelah pengguna mengautentikasi dan memberikan persetujuan, titik akhir penyedia identitas federasi mengembalikan SAML respons HTTPS ke yang ditunjukkan oleh. URI redirect_uri

  6. Browser web memindahkan pesan respons dengan SAML respons terhadap yang ditunjukkanredirect_uri.

  7. Server lokal menerima koneksi masuk dan plugin mengambil SAML respons dan meneruskannya ke Amazon Redshift.

Dengan plugin browser Azure AD, SAML otentikasi mengalir seperti ini:

Alur kerja Azure untuk bagaimana plugin, server lokal, browser web, dan titik akhir bekerja sama untuk mengautentikasi pengguna dengan otentikasi. SAML
  1. Seorang pengguna mencoba masuk.

  2. Plugin meluncurkan server lokal untuk mendengarkan koneksi masuk di localhost.

  3. Plugin meluncurkan browser web untuk meminta kode otorisasi dari titik akhir Azure AD. oauth2/authorize

  4. Browser web mengikuti tautan yang dihasilkan HTTPS dan meminta pengguna untuk memasukkan kredensi. Tautan dihasilkan menggunakan properti konfigurasi, seperti tenant dan client_id.

  5. Setelah pengguna mengautentikasi dan memberikan persetujuan, oauth2/authorize titik akhir Azure AD mengembalikan dan mengirimkan respons HTTPS dengan kode otorisasi ke yang ditunjukkan. redirect_uri

  6. Browser web memindahkan pesan respons dengan SAML respons terhadap yang ditunjukkanredirect_uri.

  7. Server lokal menerima koneksi masuk dan permintaan plugin dan mengambil kode otorisasi dan mengirim POST permintaan ke titik akhir Azure AD. oauth2/token

  8. oauth2/tokenTitik akhir Azure AD mengembalikan respons dengan token akses ke yang ditunjukkan. redirect_uri

  9. Plugin mengambil SAML respons dan meneruskannya ke Amazon Redshift.

Lihat bagian berikut:

Opsi plugin

Untuk menggunakan plugin penyedia kredensial SAML berbasis, tentukan opsi berikut menggunakan JDBC atau ODBC opsi atau dalam profil bernama. Jika plugin_name tidak ditentukan, opsi lain diabaikan.

Opsi

Deskripsi
plugin_name

UntukJDBC, nama kelas yang mengimplementasikan penyedia kredensyal. Tentukan satu dari yang berikut ini:

  • Untuk Layanan Federasi Direktori Aktif

    com.amazon.redshift.plugin.AdfsCredentialsProvider
  • Untuk Okta

    com.amazon.redshift.plugin.OktaCredentialsProvider
  • Untuk PingFederate

    com.amazon.redshift.plugin.PingCredentialsProvider
  • Untuk Microsoft Azure Active Directory

    com.amazon.redshift.plugin.AzureCredentialsProvider
  • Untuk SAML MFA

    com.amazon.redshift.plugin.BrowserSamlCredentialsProvider
  • Untuk Microsoft Azure Active Directory, sistem masuk tunggal dengan MFA

    com.amazon.redshift.plugin.BrowserAzureCredentialsProvider

UntukODBC, tentukan salah satu dari berikut ini:

  • Untuk Layanan Federasi Direktori Aktif: adfs

  • Untuk Okta: okta

  • Untuk PingFederate: ping

  • Untuk Microsoft Azure Active Directory: azure

  • Untuk SAMLMFA: browser saml

  • Untuk sistem masuk tunggal Microsoft Azure Active Directory dengan: MFA browser azure ad

idp_host Nama host penyedia identitas perusahaan. Nama ini tidak boleh menyertakan garis miring ('/'). Untuk penyedia identitas Okta, nilai untuk idp_host harus diakhiri dengan.okta.com.

idp_port

Port yang digunakan oleh penyedia identitas. Default-nya adalah 443. Port ini diabaikan untuk Okta.

preferred_role

Peran Amazon Resource Name (ARN) dari AttributeValue elemen untuk Role atribut dalam SAML pernyataan. Untuk menemukan nilai yang sesuai untuk peran yang diinginkan, bekerjalah dengan administrator iDP Anda. Untuk informasi selengkapnya, lihat Langkah 2: Konfigurasikan SAML pernyataan untuk IDP Anda.

user

Nama pengguna perusahaan, termasuk domain bila berlaku. Misalnya, untuk Active Directory, nama domain diperlukan dalam format domain\ username.
password

Kata sandi pengguna perusahaan. Kami menyarankan untuk tidak menggunakan opsi ini. Sebagai gantinya, gunakan SQL klien Anda untuk memasok kata sandi.

app_id

ID untuk aplikasi Okta. Hanya digunakan dengan Okta. Nilai untuk app_id mengikuti amazon_aws di tautan embed aplikasi Okta. Untuk mendapatkan nilai ini, bekerja dengan administrator iDP Anda. Berikut ini adalah contoh link embed aplikasi: https://example.okta.com/home/amazon_aws/0oa2hylwrpM8UGehd1t7/272

idp_tenant

Penyewa yang digunakan untuk Azure AD. Digunakan hanya dengan Azure.

client_id

ID klien untuk aplikasi perusahaan Amazon Redshift di Azure AD. Digunakan hanya dengan Azure.