

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Mengkonfigurasi otentikasi dan SSL
<a name="jdbc20-configure-authentication-ssl"></a>

Untuk melindungi data dari akses yang tidak sah, penyimpanan data Amazon Redshift memerlukan semua koneksi untuk diautentikasi menggunakan kredensyal pengguna. Beberapa penyimpanan data juga memerlukan koneksi yang harus dibuat melalui protokol Secure Sockets Layer (SSL), baik dengan atau tanpa otentikasi satu arah.

Driver Amazon Redshift JDBC versi 2.x memberikan dukungan penuh untuk protokol otentikasi ini. 

Versi SSL yang didukung driver tergantung pada versi JVM yang Anda gunakan. Untuk informasi tentang versi SSL yang didukung oleh setiap versi Java, lihat [Mendiagnosis TLS, SSL, dan HTTPS](https://blogs.oracle.com/java-platform-group/diagnosing-tls,-ssl,-and-https) di Blog Manajemen Produk Grup Platform Java. 

Versi SSL yang digunakan untuk koneksi adalah versi tertinggi yang didukung oleh driver dan server, yang ditentukan pada waktu koneksi.

Konfigurasikan driver Amazon Redshift JDBC versi 2.x untuk mengautentikasi koneksi Anda sesuai dengan persyaratan keamanan server Redshift yang Anda sambungkan. 

Anda harus selalu memberikan nama pengguna dan kata sandi Redshift Anda untuk mengautentikasi koneksi. Bergantung pada apakah SSL diaktifkan dan diperlukan di server, Anda mungkin juga perlu mengonfigurasi driver untuk terhubung melalui SSL. Atau Anda mungkin menggunakan otentikasi SSL satu arah sehingga klien (driver itu sendiri) memverifikasi identitas server. 

Anda memberikan informasi konfigurasi ke driver di URL koneksi. Untuk informasi selengkapnya tentang sintaks URL koneksi, lihat[Membangun URL koneksi](jdbc20-build-connection-url.md). 

*SSL* menunjukkanTLS/SSL, both Transport Layer Security and Secure Sockets Layer. The driver supports industry-standard versions of TLS/SSL. 

## Mengkonfigurasi otentikasi IAM
<a name="jdbc20-configure-iam-authentication"></a>

Jika Anda terhubung ke server Amazon Redshift menggunakan autentikasi IAM, setel properti berikut sebagai bagian dari string koneksi sumber data Anda. 

 Untuk informasi selengkapnya tentang autentikasi IAM, lihat. [Manajemen identitas dan akses di Amazon Redshift](redshift-iam-authentication-access-control.md)

Untuk menggunakan otentikasi IAM, gunakan salah satu format string koneksi berikut:


| String koneksi | Deskripsi | 
| --- | --- | 
|  `jdbc:redshift:iam:// [host]:[port]/[db]`  |  String koneksi biasa. Pengemudi menyimpulkan clusterID dan Region dari host.  | 
|  `jdbc:redshift:iam:// [cluster-id]: [region]/[db]`  |  Pengemudi mengambil informasi host, mengingat ClusterID dan Region.  | 
|  `jdbc:redshift:iam:// [host]/[db]`  |  Driver default ke port 5439, dan menyimpulkan ClusterID dan Region dari host. Bergantung pada port yang Anda pilih saat membuat, memodifikasi, atau memigrasi klaster, izinkan akses ke port yang dipilih.   | 

## Menentukan profil
<a name="jdbc20-aws-credentials-profiles"></a>

Jika Anda menggunakan otentikasi IAM, Anda dapat menentukan properti koneksi tambahan yang diperlukan atau opsional di bawah nama profil. Dengan melakukan ini, Anda dapat menghindari meletakkan informasi tertentu secara langsung di string koneksi. Anda menentukan nama profil dalam string koneksi Anda menggunakan properti Profil. 

Profil dapat ditambahkan ke file AWS kredensyal. Lokasi default untuk file ini adalah: `~/.aws/credentials` 

Anda dapat mengubah nilai default dengan mengatur jalur dalam variabel lingkungan berikut: `AWS_CREDENTIAL_PROFILES_FILE` 

 Untuk informasi selengkapnya tentang profil, lihat [Bekerja dengan AWS Kredensyal di. *AWS SDK untuk Java*](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html) 

## Menggunakan kredensial profil instance
<a name="jdbc20-instance-profile-credentials"></a>

Jika Anda menjalankan aplikasi pada instans Amazon EC2 yang dikaitkan dengan peran IAM, Anda dapat terhubung menggunakan kredenal profil instans. 

Untuk melakukan ini, gunakan salah satu format string koneksi IAM di tabel sebelumnya, dan atur properti koneksi dbuser ke nama pengguna Amazon Redshift yang Anda sambungkan sebagai. 

Untuk informasi selengkapnya tentang profil instans, lihat [Manajemen Akses](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) di *Panduan Pengguna IAM*. 

## Menggunakan penyedia kredensi
<a name="jdbc20-aws-credentials-provider"></a>

Driver juga mendukung plugin penyedia kredenal dari layanan berikut: 
+ AWS Pusat Identitas IAM
+ Layanan Federasi Direktori Aktif (ADFS)
+ Layanan Token Web JSON (JWT)
+ Layanan Microsoft Azure Active Directory (AD) dan Layanan Browser Microsoft Azure Active Directory (AD)
+ Layanan Okta
+ PingFederate Layanan 
+ Browser SAMP untuk layanan SAMP seperti Okta, Ping, atau ADFS

Jika Anda menggunakan salah satu layanan ini, URL koneksi perlu menentukan properti berikut: 
+ **Plugin\$1Name** - Jalur kelas yang sepenuhnya memenuhi syarat untuk kelas plugin penyedia kredensil Anda.
+ **IDP\$1host:** — Host untuk layanan yang Anda gunakan untuk mengautentikasi ke Amazon Redshift.
+ **IDP\$1port** — Port tempat host untuk layanan otentikasi mendengarkan. Tidak diperlukan untuk Okta.
+ **User** — Nama pengguna untuk server idp\$1host.
+ **Kata sandi** — Kata sandi yang terkait dengan nama pengguna idp\$1host.
+ **DbUser**— Nama pengguna Amazon Redshift yang Anda sambungkan sebagai.
+ **SSL\$1insecure** - Menunjukkan apakah sertifikat server IDP harus diverifikasi.
+ **Client\$1ID — ID** klien yang terkait dengan nama pengguna di portal Azure AD. Hanya digunakan untuk Azure AD.
+ **Client\$1Secret** — Rahasia klien yang terkait dengan ID klien di portal Azure AD. Hanya digunakan untuk Azure AD.
+ **IDP\$1Tenant** - ID penyewa Azure AD untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Azure AD.
+ **App\$1ID — ID** aplikasi Okta untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Okta.
+ **App\$1Name — Nama** aplikasi Okta opsional untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Okta.
+ **Partner\$1SPID** — Nilai SPID mitra opsional (ID penyedia layanan). Hanya digunakan untuk PingFederate.
+ **Idc\$1Region** — Wilayah AWS Tempat instans AWS IAM Identity Center berada. Hanya digunakan untuk AWS IAM Identity Center.
+ **Issuer\$1Url** — Titik akhir instance server AWS IAM Identity Center. Hanya digunakan untuk AWS IAM Identity Center.

Jika Anda menggunakan plugin browser untuk salah satu layanan ini, URL koneksi juga dapat mencakup: 
+ **Login\$1URL —URL** untuk sumber daya di situs web penyedia identitas saat menggunakan layanan Security Assertion Markup Language (SAMP) atau Azure AD melalui plugin browser. Parameter ini diperlukan jika Anda menggunakan plugin browser.
+ **Listen\$1Port** — Port yang digunakan driver untuk mendapatkan respons SAMP dari penyedia identitas saat menggunakan layanan SAMP, Azure AD, atau AWS IAM Identity Center melalui plugin browser.
+ **IDP\$1Response\$1Timeout** — Jumlah waktu, dalam hitungan detik, driver menunggu respons SAMP dari penyedia identitas saat menggunakan layanan SAMP, Azure AD, atau IAM Identity Center melalui plugin browser. AWS 

Untuk informasi tentang properti string koneksi tambahan, lihat[Opsi untuk konfigurasi driver JDBC versi 2.x](jdbc20-configuration-options.md). 

# Hanya menggunakan nama pengguna dan kata sandi
<a name="jdbc20-authentication-username-password"></a>

Jika server yang Anda sambungkan tidak menggunakan SSL, maka Anda hanya perlu memberikan nama pengguna dan kata sandi Redshift Anda untuk mengautentikasi koneksi. 

**Untuk mengonfigurasi otentikasi menggunakan nama pengguna dan kata sandi Redshift Anda saja**

1. Setel `UID` properti ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Setel properti PWD ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

# Menggunakan SSL tanpa verifikasi identitas
<a name="jdbc20-use-ssl-without-identity-verification"></a>

Jika server yang Anda sambungkan menggunakan SSL tetapi tidak memerlukan verifikasi identitas, maka Anda dapat mengonfigurasi driver untuk menggunakan pabrik SSL yang tidak memvalidasi. 

**Untuk mengonfigurasi koneksi SSL tanpa verifikasi identitas**

1. Setel `UID` properti ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Atur `PWD` properti ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

1. Atur `SSLFactory` properti ke`com.amazon.redshift.ssl.NonValidatingFactory`.

# Menggunakan otentikasi SSL satu arah
<a name="jdbc20-use-one-way-SSL-authentication"></a>

Jika server yang Anda sambungkan menggunakan SSL dan memiliki sertifikat, maka Anda dapat mengonfigurasi driver untuk memverifikasi identitas server menggunakan otentikasi satu arah. 

Otentikasi satu arah memerlukan sertifikat SSL yang ditandatangani dan tepercaya untuk memverifikasi identitas server. Anda dapat mengonfigurasi driver untuk menggunakan sertifikat tertentu atau mengakses TrustStore yang berisi sertifikat yang sesuai. Jika Anda tidak menentukan sertifikat atau TrustStore, maka driver menggunakan Java default TrustStore (biasanya salah satu `jssecacerts` atau`cacerts`). 

**Untuk mengonfigurasi otentikasi SSL satu arah**

1. Setel properti UID ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Setel properti PWD ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

1. Setel properti SSL ke true.

1. Setel properti SSLRoot Cert ke lokasi sertifikat CA root Anda.

1. Jika Anda tidak menggunakan salah satu Java default TrustStores, lakukan salah satu hal berikut:
   + Untuk menentukan sertifikat server, setel properti SSLRoot Cert ke jalur lengkap sertifikat.
   + Untuk menentukan a TrustStore, lakukan hal berikut:

     1. Gunakan program keytool untuk menambahkan sertifikat server ke TrustStore yang ingin Anda gunakan.

     1. Tentukan TrustStore dan kata sandi yang akan digunakan saat memulai aplikasi Java menggunakan driver. Contoh:

        ```
        -Djavax.net.ssl.trustStore=[TrustStoreName]
        -Djavax.net.ssl.trustStorePassword=[TrustStorePassword]
        -Djavax.net.ssl.trustStoreType=[TrustStoreType]
        ```

1. Pilih salah satu:
   + Untuk memvalidasi sertifikat, setel SSLMode properti ke verify-ca.
   + Untuk memvalidasi sertifikat dan memverifikasi nama host dalam sertifikat, atur SSLMode properti ke verify-full.