Konfigurasi SSO(Single
Sign On)
1. Definisi SSO
Sebuah sistem authentifikasi terhadap user dengan sekali
login akan bisa mengakses beberapa aplikasi tanpa harus login di masing-masing
aplikasi. Memiliki 2 bagian yaitu Single Sign On (login satu aplikasi, maka
aplikasi lain yang didefinisikan ikut dalam SSO otomatis akan bisa diakses) dan
Single Sign Out (log out di satu aplikasi, maka semua aplikasi yang
didefinisikan ikut dalam SSO akan ikut logout secara otomatis
2. Konsep dari proses SSO
·
Konsep dan Architecture SSO
1.
User akan login ke sebuah aplikasi yang telah dipasang
SSO,aplikasi yang didalamnya telah dipasang OHS dan login SSO,jika OHS down
aplikasi tidak akan dapat diakses oleh user tersebut
2.
Ketika user akan login username dan password maka aplikasi
akan melakukan authentication ke LDAP melalui OAM,
3.
Didalam OAM telah dipasang Webgate dan SSO Agent,didalam
webgate akan generate key SSL ,fungsi key
SSL adalah agar aplikasi yang diakses dapat berkomunikasi dengan OAM
4.
OAM akan melakukan authentication ke LDAP untuk menanyakan
apakah user tersebut mempunyai hak akses untuk login/ada data usernya, ketika
LDAP mengecek dan user tersebut ada datanya maka LDAP akan
menginformasikan ke OAM,dan akan
meneruskan ke aplikasi dan user berhasil login
3. Komponen SSO
1.
OHS (Oracle HTTP Server)
2.
OAM (Oracle Access Manager)
3.
OID (Oracle Internet Directory)
4.
Webgate
5.
SSO Agent
4. Fitur SSO
Membatasi seorang user hanya login disatu tempat saja. Kalau
biasanya sebuah aplikasi web dengan user yang sama dapat diakses
di beberapa tempat secara bersamaan, di SSO kita bisa membuat
pembatasan yang terintegrasi
Log aktivitas user yang terpusat. Kalau tadinya log aktivitas
user tersebar dimasing-masing aplikasi,
di SSO kita bisa mencatat log seluruh aktivitas user di
berbagai aplikasi yang tergabung dalam SSO
5.
Cara Kerja SSO
·
Memproses login dari user, membuat session atau coockies,
kemudian meredirect ke alamat asal aplikasi yang melakukan login. Kondisi ini
di sebut SSO Server ON
·
Memproses logout yaitu ketika ada request logout dia akan
menghapus session dan cookies. Kondisi ini di sebut SSO Server OFF
·
Melakukan sinkronasi kondisi ON dan OFF dari aplikasi yang
mengakses server SSO.Jika kondisi ON maka akan mengirimkan signal user sudah
login, dan aplikasi yang mengaksesnya akan menindaklanjuti dengan proses
seperti create session aplikasi dan mengijinkan user masuk ke aplikasi.Jika
kondisi OFF maka akan mengirimkan signal user sudah logout sehingga aplikasi
yang mengaksesnya akan menindaklanjuti untuk logout aplikasi seperti hapus
session aplikasi dan redirect ke halaman login.
Berikut Langkah –langkah untuk mengkonfigur SSO di server SDP
1.
Pastikan server OAM (Oracle Access Management ) /console dan
/oamconsole nya ready
2.
Sebagai salah satu contoh ,saya akan coba memasang SSO di
aplikasi domain OSB
3.
Create SSO Agent di oamconsole
4.
Upgrade OHS dan Konfigurasi OHS
Dalam kasus ini ternyata OHS nya perlu di upgrade ke versi
1.1.9
5.
Konfigurasi OID
6.
Upgrade Webgate
7.
Deploy Webgate
8.
Create certificate SSL
Berikut langkah –langkah
untuk mengkonfigur sebuah aplikasi menggunakan SSO
1.Buka url
:accessadmin.co.id/oamconsole,lalu pilih SSO agent
2. Setelah itu pilih create 11g Webgate
3. Setelah itu input parameter yang diperlukan ,mulai dari
nama webgate,description dan protected resource list yang digunakan aplikasi
(ex:/console,/sbconsole,/em dll)
4.Setelah itu pilih Application Domain
5.Setelah masuk ke Application Domain pilih search untuk
mencari nama webgate yang telah kita buat tadi,disini contohnya oam_osb
6.Lalu pilih tab resource dan pilih url dan icon pencil
untuk mengedit/menambahkan
7.Pilih Unprotected
8.Pilih Apply
Setelah selesai create SSO Agent di OAM Console maka
selanjutnya
1.
Deploy
Webgate
Berikut Script untuk deploy webgate
-‘’cd
/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/deployWebGate’’
-‘’./deployWebGateInstance.sh
-w /u02/app/oracle/admin/OHS_Instance1/config/OHS/ohs1/ -oh
/u01/app/oracle/product/fmw/webgate/’’
2. –cd
/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/setup/InstallTools
export
LD_LIBRARY_PATH=/u01/app/oracle/product/fmw/web/lib/
3. Cd
/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/setup/InstallTools
./EditHttpConf
-w /u02/app/oracle/admin/OHS_Instance1/config/OHS/ohs1/ -oh
/u01/app/oracle/product/fmw/webgate
Kalau sukses akan keluar perintah seperti
dibawah
The web server configuration file was
successfully updated
/u02/app/oracle/admin/OHS_Instance1/config/OHS/ohs1/httpd.conf
has been backed up as /u02/app/oracle/admin/OHS_Instance1/config/OHS/ohs1/httpd.conf.ORIG
4.
Langkah selanjutnya ssh ke mesin OAM
/u01/app/oracle/admin/Access_Domain/aserver/Access_Domain/output/oam_osb
Lalu copykan semua file yang ada didalam
oam_osb tersebut ke mesin OSB,isi dari file yang ada di oam_osb tersebut adalah
hasil dari sso agent yang telah kita create di oamconsole tadi
Isi file itu seperti
-cwallet.sso
-ObAccessClient.xml
5.
Langkah selanjutnya copy config di folder
webgate ke mesin osb
6.
Langkah selanjutnya create certificate SSL
Masuk ke /u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/openssl
openssl
req -utf8 -new -nodes -config openssl_silent_ohs11g.cnf -keyout aaa_key.pem
-out aaa_req.pem -rand
/u01/app/oracle/product/fmw/webgate/webgate/ohs/config/random-seed
Generating a 1024 bit RSA private key
........................++++++
....................................++++++
writing new private key to 'aaa_key.pem
7.
Selanjutnya masuk ke mesin osb
cd
/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/openssl
Lalu vi openssl_silent_ohs11g.cnf
#dir =
./tools/openssl/simpleCA # Location
for everything
dir =
../openssl/simpleCA
certs = $dir # Location of issued certs
are kept
crl_dir = $dir # Location of issued crl are kept
8.
Masuk ke mesin osb lalu masuk ke directory
/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/openssl
Lalu masukan script berikut
‘’
openssl ca -config openssl_silent_ohs11g.cnf -policy policy_anything -batch
-out aaa_cert.pem -infiles aaa_req.pem
Using
configuration from openssl_silent_ohs11g.cnf’’
sCheck that the request matches the
signature
Signature ok
The Subject's Distinguished Name is as
follows
countryName :PRINTABLE:'US'
stateOrProvinceName :PRINTABLE:'Some-State'
localityName :PRINTABLE:'Locality Name'
organizationName :PRINTABLE:'Some-Organization
Pty Ltd'
organizationalUnitName:PRINTABLE:'production'
commonName :PRINTABLE:'hostName.domainName.com'
emailAddress :IA5STRING:'mail@domain.com'
Certificate is to be certified until
Mar 1 09:45:02 2017 GMT (365 days)
9.
Langkah selanjutnya masuk ke mesin OAM
Masuk ke directory ‘’/u01/app/oracle/product/fmw/webgate/webgate/ohs/tools/openssl’’
Lalu copykan semua file yang ada didalam
folder openssl ke mesin OSB
10.
Setelah itu restart OHS
11.
Masuk ke OID (odsm)untuk membuat group untuk
menentukan user tersebut sebagai admin atau monitor/operator,dalam hal ini
group yang dibikin di OID adalah role default dari weblogic,seperti
Administrators,Integration Admin,Operator,Monitor dll tanpa perlu di add,jadi
user tidak perlu lagi di add di role security realm nya.
12.
Berikut tampilan OSB setelah berhasil di pasang SSO