Keycloak adalah sebuah platform open source untuk manajemen identitas dan akses yang memungkinkan Kita mengamankan aplikasi dan layanan web dengan mudah. Dengan Keycloak, Kita dapat menyediakan fitur autentikasi, otorisasi, manajemen pengguna, manajemen sesi, manajemen peran, single sign-on, dan lainnya dengan menggunakan protokol stKitar seperti OpenID Connect, OAuth 2.0, SAML 2.0, dan lainnya.
Salah satu cara untuk mencoba dan menggunakan Keycloak untuk keperluan development di local adalah dengan menggunakan Docker. Docker adalah sebuah platform yang memungkinkan Kita membuat, menjalankan, dan mendistribusikan aplikasi dalam bentuk kontainer. Kontainer adalah unit perangkat lunak yang berisi semua yang dibutuhkan untuk menjalankan aplikasi, seperti kode, library, konfigurasi, dan dependensi. Dengan Docker, Kita dapat menjalankan Keycloak dengan mudah dan cepat tanpa perlu menginstal dan mengonfigurasi Keycloak secara manual.
Berikut adalah langkah-langkah untuk menggunakan Keycloak dengan Docker untuk development di local:
Langkah 1: Menjalankan Keycloak dengan Docker
Untuk menjalankan Keycloak dengan Docker, Kita memerlukan Docker yang sudah terinstal di mesin Kita. Kita dapat mengunduh dan menginstal Docker dari situs resmi Docker.
Setelah Docker terinstal, Kita dapat menjalankan Keycloak dengan menggunakan perintah berikut di terminal atau command prompt:
docker run --name mykeycloak -p 8080:8080 \
-e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin \
quay.io/keycloak/keycloak:latest \
start-dev
Perintah ini akan menjalankan Keycloak dengan nama kontainer mykeycloak dan port 8080. Kita juga dapat mengganti nama kontainer dan port sesuai keinginan Kita. Perintah ini juga akan membuat sebuah akun admin dengan username admin dan password admin. Kita dapat mengganti username dan password sesuai keinginan Kita.
Perintah ini juga akan menjalankan Keycloak dalam mode development, yang berarti Keycloak akan menggunakan database H2 yang disimpan di dalam kontainer. Database ini tidak akan bertahan jika Kita menghapus atau menghentikan kontainer. Jika Kita ingin menggunakan database yang persisten, Kita dapat mengikuti langkah 2 di bawah ini.
Langkah 2: Menghubungkan Keycloak dengan Database Eksternal
Jika Kita ingin menggunakan database yang persisten dan dapat diakses dari luar kontainer, Kita dapat menghubungkan Keycloak dengan database eksternal, seperti PostgreSQL, MySQL, MariaDB, Oracle, atau lainnya. Keycloak mendukung berbagai database vendor yang dapat Kita pilih sesuai kebutuhan Kita.
Untuk menghubungkan Keycloak dengan database eksternal, Kita perlu mengatur beberapa variabel lingkungan saat menjalankan Keycloak dengan Docker. Variabel lingkungan ini tergantung pada database vendor yang Kita gunakan. Kita dapat melihat daftar variabel lingkungan yang tersedia untuk setiap database vendor di dokumentasi resmi Keycloak.
Sebagai contoh, jika Kita ingin menggunakan PostgreSQL sebagai database eksternal, Kita dapat menjalankan Keycloak dengan perintah berikut:
docker run --name mykeycloak -p 8080:8080 \
-e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin \
-e DB_VENDOR=postgres \
-e DB_ADDR=<alamat database> \
-e DB_PORT=<port database> \
-e DB_DATABASE=<nama database> \
-e DB_USER=<username database> \
-e DB_PASSWORD=<password database> \
quay.io/keycloak/keycloak:latest \
start-dev
Perintah ini akan menjalankan Keycloak dengan nama kontainer mykeycloak dan port 8080. Kita juga dapat mengganti nama kontainer dan port sesuai keinginan Kita. Perintah ini juga akan membuat sebuah akun admin dengan username admin dan password admin. Kita dapat mengganti username dan password sesuai keinginan Kita.
Perintah ini juga akan mengatur variabel lingkungan untuk menghubungkan Keycloak dengan PostgreSQL. Kita perlu mengganti <alamat database>, <port database>, <nama database>, <username database>, dan <password database> dengan nilai yang sesuai dengan konfigurasi database Kita.
Langkah 3: Mengakses dan Mengonfigurasi Keycloak
Setelah Keycloak berhasil dijalankan dengan Docker, Kita dapat mengakses dan mengonfigurasi Keycloak melalui antarmuka web yang disediakan oleh Keycloak. Antarmuka web ini terdiri dari dua bagian utama, yaitu Admin Console dan Account Console.
Admin Console adalah antarmuka web yang digunakan untuk mengelola Keycloak secara keseluruhan, seperti membuat dan mengatur realm, client, user, role, group, session, event, dan lainnya. Account Console adalah antarmuka web yang digunakan oleh user untuk mengelola akun mereka sendiri, seperti mengubah profil, password, email, dua faktor autentikasi, dan lainnya.
Untuk mengakses Admin Console, Kita dapat membuka browser Kita dan mengunjungi alamat http://localhost:8080/auth/admin/. Kita akan diminta untuk memasukkan username dan password admin yang Kita buat saat menjalankan Keycloak dengan Docker. Setelah berhasil masuk, Kita akan melihat halaman utama Admin Console.
Untuk mengakses Account Console, Kita dapat membuka browser Kita dan mengunjungi alamat http://localhost:8080/auth/realms/master/account/. Kita akan diminta untuk memasukkan username dan password user yang Kita buat di Keycloak. Setelah berhasil masuk, Kita akan melihat halaman utama Account Console.
Kita dapat mengonfigurasi Keycloak sesuai kebutuhan Kita melalui antarmuka web ini. Kita dapat mengikuti panduan resmi Keycloak untuk mempelajari lebih lanjut tentang cara menggunakan dan mengonfigurasi Keycloak.
Komentar
Posting Komentar