Kali ini kita akan membahas cara menggunakan Single Sign On Sumo Logic dengan Keycloak. Disini kita akan menggunakan keycloak sebagai IdP (identity provider), untuk user dari keyloaknya sendiri akan dibuat manual, semua user yang akan kita buat di realm keycloak akan bisa login otomatis ke Sumo Logic. Pemisahan role ini bisa dilakukan, tetapi disini tidak akan kita bahas, karena tulisan ini sudah cukup panjang.

Diasumsikan anda sudah mendaftar di Sumo Logic (trial 30 hari bisa digunakan), dan memiliki Keycloak yang siap digunakan, karena proses pendaftaran dan instalasi tidak akan kita bahas.

Sebelum jalan lebih jauh, kita perlu mengerti arti dari realm dan client di Keycloak.

1. Buat Realm

Realm digunakan untuk mengelola client, user, role dan group. Bila anda membuat user di realm A, user tersebut tidak akan muncul di realm B karena keduanya terpisah.

Buat realm baru dengan mengarahkan cursor ke Master dan add realm
create new realm
buat realm baru
yang perlu di isi :
Name: sumologic
Enable : on
selebihnya biarkan default. Klik Create

Setelah klik create akan diarahkan ke halaman realm Sumologic yang baru dibuat
new realm created

Klik link SAML 2.0 Identity Provider Metadata di Endpoints. Bagian yang perlu dicatat adalah entityID dan X509Certificate
keycloack identity certificate

2. SAML Sumologic

Administration -> Security -> SAML.

Untuk menambah configurasi baru klik Add Configuration

Configuration Name: keycloak
Issuer: https://keycloak.jaranguda.com/auth/realms/sumologic (dari entityID)

X.509 Certificate: Copy file certificate dari X509Certificate, tambahkan dibaris pertama -----BEGIN CERTIFICATE----- dan dibaris akhir -----END CERTIFICATE-----, contoh

-----BEGIN CERTIFICATE-----
MIICoTCCAYkCBgF7GwJt/zANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDDAlzdW1vbG9naWMwHhcNMjEwODA2MTAyNzI5WhcNMzEwODA2MTAyOTA5WjAUMRIwEAYDVQQDDAlzdW1vbG9naWMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCOjnlkr5X3t43E/plYVHHWjPGf00NA4Vwvsc+DBcVHKAzNOS7EmG5weQzO66RqN1+2+r75tCxLf5I/Ao2b4BKgDZkuHJTegD5+7XGJX67X3EUQALWxswaqerz1hzWuTWdZGwJD+CitGQjiy3W7NZAFBh9UpnSsomi56ybK1ghADQn04tq1wwudd1/D/UrYbkLYdAbRXfG/xhFtz330XBBwjK3X6cjdaRf3mMC7xCTJ52b7sUJf4CKJAyHQN3DMyStxBXh9CgLJCyiRjjnuOeLybad4diNjQHxFhOkpge+qh+VL5UCIuYB65AHYT2NW47QdnO6cQkUIM9RajYJHvaKJAgMBAAEwDQYJKoZIhvcNAQELBQADggEBADl6ZzEXXL3ro6s+zn6+SURI2qb6upbXmuMbHoW1fhTCuYRlsK0at0FWWpZ98b1/T8Ps8zCGcf/UovUSCUiRvA5zqrKECl0nYNUOKQSbbWG3isB8FyO+WIVoYpqCauHYX1wkZAi0j0gu8z3Omy9tbVUY5c0w5Ojxiki1apnnFtQNHNmX5JlZaGX2hX0ETrKq4KXmE3A1L/bEfmdmZxALZJaWxWjZWt5tO+AY1YikWZ7EZUVT5Lp/hNktASzg82fdcEobo1/XrY+DM/fz5hkUWa5GK59W7rq88TT2uXi4YFARmfQ+NkOKg8bt/0rOcw4dHXM1TsTHSicBxz5QvYRrA5o=
-----END CERTIFICATE-----

config sumologic saml

Use SAML Subject : dicentang, kita akan mapping SAML Subject ini ke email di client Keycloak <code>Name ID Format </code>
On Demand Provisioning
First Name : firstName
Last Name : lastName
On Demand Provisioning Roles : Analyst

klik Add

klik pada nama konfigurasi, lalu copy Assertion Consumer
Assertion Consumer sumo logic

3. Buat client di Keycloak

Client ini yang akan kita gunakan untuk login ke Sumo Logic.

Kembali ke Keycloak, klik Clients -> Create (untuk membuat client baru)
new client keycloak
Client ID : sumologic
Client Protocol : saml
akhiri dengan klik Save

Pada konfigurasi client sumologic ini

Client IDsumologic
EnabledON
Include AuthnStatementON
Sign DocumentsON
Client Signature RequiredON
Force POST BindingON
Front Channel LogoutON
Name ID Formatemail
Master SAML Processing URLURL dari Assertion Consumer web sumologic, contoh https://service.jp.sumologic.com/sumo/saml/consume/807397564
IDP Initiated SSO URL NameBisa apa saja, contoh saya menggunakan signin

Setelah memasukkan signin pada Initiate SSO akan muncul URL yang digunakan untuk login, contoh https://keycloak.jaranguda.com/auth/realms/sumologic/protocol/saml/clients/signin

keycloak sumologic client configuration

masih di Clients -> sumologic, klik Mappers klik lagi Create
Disini kita akan mapping informasi user keycloak ke sumo logic (sesuai dengan On Demand Provisioning)
keycloak client mapper

NameMapper TypePropertyFriendly Name
firstNameUser PropertyfirstNamefirstName
lastNameUser PropertylastNamelastName

4. Buat User di Keycloak

Add user
tambah user keycloak

Username jaranguda
Email isi dengan email anda
Firstname Siadmin
Lastname Jaranguda
User Enabled ON
Email Vertified ON

akhiri dengan klik Save.

Pada konfigurasi user jaranguda klik tab Credentials
Disini kita akan membuat password untuk user yang baru dibuat
set password user keycloak
Field yang perlu diisi:
Password
Password Confirmation
Temporary: Off
klik Set Password, saat diminta konfirmasi anda akan set password klik OK.

5. Tes Konfigurasi Keycloak dan Sumo Logic

Setelah konfigurasi selesai, saatnya melakukan testing untuk mengetahui hasil dari konfigurasi kita.

Buka alamat Target IDP Initiated SSO URL tersebut di browser yang berbeda atau incognito
alamat login sumologic dari keycloak
masukkan user dan password user yang baru dibuat, klik sign in
berhasil login dan mapping bekerja

berhasil login, dan lihat dipojok kiri bawah kelihatan Siadmin Jaranguda, nama yang kita buat sewaktu create user, bila ada kesalahan yang muncul disitu adalah alamat email.

SSO keycloak dengan Sumo Logic dan mapping data berhasil dijalankan.

Leave a comment

Your email address will not be published. Required fields are marked *