SlideShare a Scribd company logo
1 of 17
Download to read offline
Instalasi dan Konfigurasi simpleSAMLphp
OpenThink Labs Workshops
Membangun Platform Single Sign On (SSO) berbasis Security Assertion Markup Language (SAML)
Wildan Maulana <wildan.m@openthinklabs.com>
Senin 27 April 2015
Daftar Isi
Dokumentasi dan Berita terkait simpleSAMLphp.....................................................................................3
Versi Pengembangan..................................................................................................................................3
Prasyarat.....................................................................................................................................................3
Download dan Instalasi simpleSAMLphp.................................................................................................3
Melakukan upgrade dari versi sebelumnya ke versi terbaru simpleSAMLphp.........................................4
Mengupgrade File-File Konfigurasi......................................................................................................4
Mengupgrade File-File Metadata..........................................................................................................5
Mengkonfigurasi Apache...........................................................................................................................5
Mengkonfigurasi simpleSAMLphp : config.php.......................................................................................6
Mengkonfigurasi PHP................................................................................................................................6
Mengirim e-mail dari PHP....................................................................................................................6
Module-Module Bawaan yang Tersedia....................................................................................................7
adfs........................................................................................................................................................7
aggregator..............................................................................................................................................7
aggregator2............................................................................................................................................7
aselect....................................................................................................................................................7
authcrypt................................................................................................................................................7
authfacebook.........................................................................................................................................7
authlinkedin...........................................................................................................................................8
authmyspace..........................................................................................................................................8
authorize................................................................................................................................................8
authtwitter..............................................................................................................................................8
authwindowslive....................................................................................................................................8
authX509...............................................................................................................................................8
authYubiKey..........................................................................................................................................8
autotest...................................................................................................................................................9
cas..........................................................................................................................................................9
casserver................................................................................................................................................9
cdc.........................................................................................................................................................9
consent...................................................................................................................................................9
consentAdmin........................................................................................................................................9
1
consentSimpleAdmin............................................................................................................................9
core......................................................................................................................................................10
cron......................................................................................................................................................10
discojuice.............................................................................................................................................11
discopower...........................................................................................................................................11
exampleattributeserver........................................................................................................................11
exampleauth.........................................................................................................................................11
expirycheck..........................................................................................................................................11
InfoCard...............................................................................................................................................11
ldap......................................................................................................................................................11
logpeek................................................................................................................................................11
memcacheMonitor...............................................................................................................................11
metaedit...............................................................................................................................................11
metarefresh..........................................................................................................................................11
modinfo...............................................................................................................................................12
multiauth..............................................................................................................................................12
oauth....................................................................................................................................................12
openid..................................................................................................................................................12
openidProvider....................................................................................................................................12
portal....................................................................................................................................................12
preparedwarning..................................................................................................................................12
radius...................................................................................................................................................12
saml.....................................................................................................................................................12
saml2debug..........................................................................................................................................12
sanitycheck..........................................................................................................................................13
smartnameattribute..............................................................................................................................13
sqlauth.................................................................................................................................................13
statistics...............................................................................................................................................13
themefeidernd......................................................................................................................................13
Mengaktifkan Module..............................................................................................................................13
Halaman web instalasi simpleSAMLphp.................................................................................................13
Peringatan............................................................................................................................................14
Mengaktifkan Modul Sanity Check....................................................................................................14
Memerika environment PHP Anda.....................................................................................................14
Langkah Selanjutnya................................................................................................................................14
Dukungan ................................................................................................................................................14
Instalasi simpleSAMLphp di Lokasi Alternatif.......................................................................................15
Tip........................................................................................................................................................15
Catatan.................................................................................................................................................15
Referensi .................................................................................................................................................15
2
Dokumentasi dan Berita terkait simpleSAMLphp
Dokumentasi ini merupakan saduran dari dokumentasi resmi simpleSAMLphp dan merupakan bagian
dari serangkaian dokumentasi lainnya terkait simpleSAMLphp.
• Daftar lengkap dokumentasi resmi simpleSAMLphp, http://simplesamlphp.org/docs/stable/
• Berita terbaru mengenai simpleSAMLphp, https://rnd.feide.no/category/simplesamlphp/
• Homepage simpleSAMLphp, http://simplesamlphp.org/
Versi Pengembangan
Prasyarat
• Webserver yang dapat mengeksekusi script PHP
• Versi PHP yang digunakan >= 5.2.0
• Mendukung beberapa ekstensi PHP berikut :
◦ Selalu memerlukan : date, dom, hash, libxml, openssl, pcre, SLP dan
zlib
◦ Ketika mengenkripsi assertions : mcrypt
◦ Ketika melakukan autentifikasi ke server LDAP : ldap
◦ Ketika melakukan autentifikasi ke server RADIUS : radius
◦ Ketika menyimpan informasi session ke server memcache : memcache
◦ Ketika menggunakan database :
▪ Selalu : PDO
▪ Driver database : (mysql, pgsql, ...)
Paket software yang perlu diinstall bervarisai dari satu platform dan distribusi ke platform dan
distribusi lainnya. Silahkan baca dokumentasi platform dan distribusi sistem operasi Anda.
Download dan Instalasi simpleSAMLphp
Rilis terbaru simpleSAMLphp dapat ditemukan dialamat : http://code.google.com/p/simplesamlphp/.
Untuk mendownload versi stabil terbaru, download saja file arsip yang berada pada bagian Featured
Download.
3
Masuklah ke direktori dimana Anda ingin menginstall simpleSAMLphp, dan ekstraklah file arsip yang
baru saja Anda download :
cd /opt
tar xzf simplesamlphp-1.x.y.tar.gz
mv simplesamlphp-1.x.y simplesamlphp
Melakukan upgrade dari versi sebelumnya ke versi terbaru
simpleSAMLphp
Ekstrak versi baru simpleSAMLphp :
cd /opt
tar xzv simplesamlphp-1.x.y.tar.gz
Copy file-file konfigurasi dari versi sebelumnya :
cd /opt/simplesamlphp-1.x.y
rm -rfv config metadata
cp -rfv ../simplesamlphp/config config
cp -rfv ../simplesamlphp/metadata metadata
Gantilah versi yang lama dengan versi yang baru :
mv simplesamlphp simplesamlphp.old
mv simplesamlphp-1.x.y simplesamlphp
Jika format file-file config dan metadata berubah dari versi lama simpleSAMLphp yang Anda gunakan
(periksalah log revisi), Anda mungkin harus mengupdate konfigurasi dan metadata Anda setelah
mengupdate kode simpleSAMLphp.
Mengupgrade File-File Konfigurasi
Pendekatan terbaik untuk melakukan hal ini adalah dengan manjalankan diff antara versi
config.php Anda yang lama dan config.php yang baru yang berada pada
config-templates/config.php dan lakukanlah modifikasi yang diperlukan pada template
4
yang baru. Dengan cara ini, maka dapat dipastikan semua entri pada versi terbaru config.php akan
terbawa, dan sekaligus menyimpan hasil modifikasi yang telah Anda lakukan.
Mengupgrade File-File Metadata
Kemungkinan besar format metadata tidak akan mengalami perubahan. Jika memang ia mengalami
perubahan, Anda akan menerima pesan error yang jelas saat proses startup yang mengindikasikan
bagaimana dan apa yang harus Anda update. Anda sebaiknya melihat isi metadata yang berada di
direktori metadata-templates setelah proses upgrade untuk melihat apakah nilai default yang
direkomendasika telah berubah.
Mengkonfigurasi Apache
Contoh dibawah mengasumsikan kalau simpleSAMLphp diinstall di lokasi default,
/opt/simplesamlphp. Anda bisa saja memiliki lokasi yang berbeda, tapi Anda harus mengubah
konfigurasi jika ingin melakukan hal ini.
Subdirektori simplesamlphp yang harus dapat diakses via web hanya direktori www saja. Ada beberapa
cara untuk menyimpan simpleSAMLphp tergantun kepada struktur web sites Anda di Apache. Salah
satu konfigurasi terbaik adalah dengan menggunakan Alias, khususnya jika simpleSAMLphp dijadikan
sebagai Service Provider.
Untuk membuat SSL Certificate silahkan lihat [5]
Buka file konfigurasi Virtual Host yang ingin Anda gunakan untuk menjalankan simpleSAMLphp.
Konfigurasinya akan seperti berikut (sesuaikan dengan kebutuhan Anda) :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName http://idp.negeripelangi.org
DocumentRoot /home/www/idp
<Directory /home/www/idp>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
5
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error,
crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin info@openthinklabs.com
ServerName idp.negeripelangi.org
ServerAlias www.idp.negeripelangi.org
DocumentRoot /home/www/idp
<Directory /home/www/idp
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/idp_error.log
CustomLog ${APACHE_LOG_DIR}/idp_access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
<FilesMatch ".(cgi|shtml|phtml|php)$">
6
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" 
nokeepalive ssl-unclean-shutdown 
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>
</IfModule>
Perhatikan directive Alias, semua url yang sesuai dengan http(s)://services.example.com/simplesaml/*
akan ditangani oleh simpleSAMLphp. Secara default simpleSAMLphp menawarkan beberapa
interface, yang semuanya berada didalam direktori www dari lokasi instalasi simpleSAMLphp Anda.
Anda dapat menggunakan Alias apa saja, tetapi Anda harus mengubah 1 entri konfigurasi di
config/config.php, yaitu :
$config = array (
[...]
'baseurlpath' => 'simplesaml/',
Mengkonfigurasi simpleSAMLphp : config.php
Ada beberapa konfigurasi di config.php yang harus Anda segera ubah :
1. Mengeset password Administrator. Hal ini diperlukan agar dapat mengakses beberapa halaman
di antar muka instalasi simpleSAMLphp
'auth.adminpassword' => 'setnewpasswordhere',
2. Mengeset secret salt. Yaitu sebuah string acak. Beberapa bagian dari simpleSAMLphp
memerlukan salt ini. SimpleSAMLphp akan menampilkan pesan error jika salt ini belum
diubah dari nilai defaultnya. Perintah berikut akan membantu Anda untuk menggenerate string
acak pada (beberapa) sistem Unix :
7
tr -c -d '0123456789abcdefghijklmnopqrstuvwxyz' </dev/urandom |
dd bs=32 count=1 2>/dev/null;echo
Berikut ini adalah contoh opsi konfigurasinya :
'secretsalt' => 'randombytesinsertedhere',
3. Mengeset informasi kontak teknikal. Informasi ini akan tersedia pada
metadata yang digenerate. Alamat e-mail juga akan digunakan untuk
menerima pesan error yang dikirimkan secara otomatis oleh
simpleSAMLphp. Berikut adalah contohnya :
'technicalcontact_name' => 'Wildan Maulana',
'technicalcontact_email' => 'wildan.m@openthinklabs.com',
4. Mengeset timezone yang Anda gunakan :
'timezone' => 'Asia/Jakarta',
Mengkonfigurasi PHP
Mengirim e-mail dari PHP
Pastikan konfigurasi instalasi PHP Anda dapat mengirim email, karena beberapa bagian
simpleSAMLphp memerlukan hal ini.
Module-Module Bawaan yang Tersedia
adfs
Merupakan module yang mengimplementasikan protokol Active Directory Federation Services
(ADFS)
untuk Identity Provider.
aggregator
Module ini mangaggregate sekumpulan entitas SAML menjadi dokumen SAML 2.0 dengan
EntitiesDescriptor yang memiliki beberapa entitas didalamnya.
Informasi lebih lanjut, http://simplesamlphp.org/docs/stable/aggregator:aggregator
8
aggregator2
Merupakan module eksperimental untuk mengaggregate metadata.
Informasi lebih lanjut, http://simplesamlphp.org/docs/stable/aggregator2:aggregator2
aselect
Module yang memungkinkan anda untuk menggunakan sumber autentifikasi A-Select melalui
simpleSAMLphp.
Untuk informasi lebih lanjut tentang module ini silahkan baca
http://simplesamlphp.org/docs/stable/aselect:aselect, sedangkan untuk A-Select, Anda dapat membaca
http://www.aselect.org/home.html
authcrypt
Module ini memungkinkan anda untuk menggunakan sumber autentifikasi username dan password
yang dihash atau sumber autentifikasi yang berupa file 'Htpasswd' Apache.
authfacebook
Dengan module ini anda dapat menggunakan sumber autentifikasi Facebook dengan simpleSAMLphp.
Untuk informasi lebih lanjut, silahkan baca
http://simplesamlphp.org/docs/stable/authfacebook:authfacebook
authlinkedin
Dengan module ini anda dapat menggunakan sumber autentifikasi LinkedIn. Jika anda mengaktifkan,
module ini, jangan lupa untuk mengaktifkan juga module oauth, karena jika tidak, anda akan
mendapatkan error seperti berikut :
simplesaml Fatal error: Class 'sspmod_oauth_Consumer' not found in...
Untuk informasi lebih lanjut, silahkan baca
http://simplesamlphp.org/docs/stable/authlinkedin:oauthlinkedin
authmyspace
Dengan module ini Anda dapat menggunakan MySpace sebagai sumber autentifikasi. Untuk informasi
selanjutnya, silahkan lihat baca http://simplesamlphp.org/docs/stable/authmyspace:oauthmyspace.
9
authorize
Modul ini menyediakan filter autorisasi yang berdasarkan regex khususnya untuk aplikasi-aplikasi yang
tidak secara tegas memisahkan antara autentifikasi dan autorisasi.
Untuk informasi lebih lanjut mengenai modul ini silahkan lihat,
http://simplesamlphp.org/docs/stable/authorize:authorize
authtwitter
Dengan menggunakan modul ini Anda dapat menggukana twitter sebagai sumber autentifikasi. Untuk
informasi lebih lanjut tentang module ini, silahkan kunjungi,
http://simplesamlphp.org/docs/stable/authtwitter:oauthtwitter
authwindowslive
Dengan module ini Anda dapat menggunakan Windows Live ID sebagai sumber autentifikasi. Untuk
informasi lebih lanjut tentang module ini, silahkan baca
http://simplesamlphp.org/docs/stable/authwindowslive:windowsliveid.
authX509
Dengan module ini, Anda dapat menggunakan X509 sebagai sumber autentifikasi. Untuk informasi
lebih lanjut, silahkan baca http://simplesamlphp.org/docs/stable/authX509:authX509
authYubiKey
Dengan menggunakan module ini, Anda dapat menggunakan authYubiKey sebagai sumber
autentifikasi. Untuk informasi lebih lanjut, silahkan baca
https://rnd.feide.no/2009/01/17/yubikey_authentication_module_in_simplesamlphp/
autotest
Module ini menyediakan antarmuka untuk melakukan testing otomatis dari berbagai sumber
autentifikasi. Untuk informasi lebih lanjut mengenai modul ini, silahkan kunjungi :
http://simplesamlphp.org/docs/stable/autotest:test
cas
Dengan menggunakan module ini, Anda dapat menggunakan CAS (Central Authentication Service)
sebagai sumber autentifikasi. Untuk informasi lebih lanjut mengenai modul ini silahkan baca :
http://simplesamlphp.org/docs/stable/cas:cas
10
casserver
Dengan menggunakan module ini, Anda dapat menggunakan simpleSAMLphp sebagai CAS Server,
untuk informasi lebih lanjut silahkan baca, http://bit.ly/xZUzaN
cdc
Module ini digunakan untuk mendukung apa yang disebut dengan Common Domain Cookie. Module
ini digunakan untuk mengeset dan membaca Common Domain Cookies.
consent
Modul consent (persetujuan) diiplementasikan sebagai filter pemroses autentifikasi. Modul ini dapat
dikonfigurasikan di file config.php global atau pada file metadata SP Remote atau IdP hosted.
Modul ini telah diaktifkan secara default, untuk mengetahui lebih lanjut mengenai modul consent,
silahkan baca http://simplesamlphp.org/docs/stable/consent:consent
consentAdmin
Modul consentAdmin merupakan addon bagi modul consent. Ini artinya, Anda tidak dapat
menggunakan modul consentAdmin tanpa mengaktifkan modul consent. Modul consentModule hanya
bekerja jika modul consent menggunakan database untuk menyimpan consent.
Untuk membaca informasi lebih jauh mengenai modul consentAdmin, silahkan baca,
http://simplesamlphp.org/docs/stable/consentAdmin:consentAdmin.
consentSimpleAdmin
Kurang lebih memiliki fungsi yang sama dengan consentAdmin, tetapi ketika penulis menulis
dokumentasi ini, apa saja perbedaan fitur di consentAdmin dan consentSimpleAdmin masih belum
dicoba.
core
Modul ini merupakan modul inti dari simpleSAMLphp yang tentu saja telah diaktifkan secara default.
Pada modul ini terdapat beberapa pemroses autentifikasi default, diantaranya adalah :
• core:AttributeAdd: Menambahkan attribut-attribut ke response.
http://simplesamlphp.org/docs/stable/core:authproc_attributeadd
• core:AttributeAlter: Mencari dan mengganti nilai sebuah attribut.
http://simplesamlphp.org/docs/stable/core:authproc_attributealter
• core:AttributeLimit: Membatasi attribute pada respons.
http://simplesamlphp.org/docs/stable/core:authproc_attributelimit
• core:AttributeMap: Mengubah nama dari attribut.
11
http://simplesamlphp.org/docs/stable/core:authproc_attributemap
• core:AttributeRealm: Membuat attribut dengan realm dari user.
http://simplesamlphp.org/docs/stable/core:authproc_attributerealm
• core:GenerateGroups: Menggenerate attribut group untuk
user.http://simplesamlphp.org/docs/stable/core:authproc_generategroups
• core:LanguageAdaptor: Mentransfer setingan bahasa dari IdP ke SP.
http://simplesamlphp.org/docs/stable/core:authproc_languageadaptor
• core:PHP: Memodifikasi attribut dengan kode PHP yang dibuat sendiri.
http://simplesamlphp.org/docs/stable/core:authproc_php
• core:ScopeAttribute: Menambahkan scope ke attribut.
http://simplesamlphp.org/docs/stable/core:authproc_scopeattribute
• core:ScopeFromAttribute: Membuat attribut baru yang berdasarkan pada scope pada attribut
yang berbeda. http://simplesamlphp.org/docs/stable/core:authproc_scopefromattribute
• core:StatisticsWithAttribute: Membuat statistic logentry.
http://simplesamlphp.org/docs/stable/core:authproc_statisticswithattribute
• core:TargetedID: Menggenerate attribute eduPersonTargetedID.
http://simplesamlphp.org/docs/stable/core:authproc_targetedid
• core:WarnShortSSOInterval: Memberikan peringatan jika user log in ke SP yang sama dalam
selang beberapa detik. http://simplesamlphp.org/docs/stable/core:authproc_warnshortssointerval
cron
...
discojuice
...
discopower
...
exampleattributeserver
...
exampleauth
...
12
expirycheck
...
InfoCard
...
ldap
Dengan modul ini Anda dapat melakukan autentifikasi terhadap server LDAP.
logpeek
...
memcacheMonitor
....
metaedit
...
metarefresh
...
modinfo
...
multiauth
Modul ini menyediakan sebuah metode agar user dapat memilih sumber autentifikasi dari daftar yang
ada.
oauth
...
openid
...
13
openidProvider
SimpleSAMLphp dapat berfungsi sebagai provider OpenID. Dengan ini, maka Anda dapat
mengintegrasikan OpenID ke IdP yang telah ada, atau menambahkan bridge antara OpenID dan SAML
2.0
portal
...
preparedwarning
..
radius
Dengan modul ini Anda dapat menggunakan server radius sebagai sumber autentifikasi.
saml
...
saml2debug
...
sanitycheck
...
smartnameattribute
...
sqlauth
...
statistics
...
themefeidernd
...
14
Mengaktifkan Module
Jika Anda ingin mengaktifkan beberapa module yang diinstall bersama simpleSAMLphp, tetapi secara
default dinonaktifkan, Anda harus membuat sebuah file kosong di direktori module yang tersebut yang
diberi nama enable.
# Mengaktifkan modul consent
cd modules
ls -l
cd consent
touch enable
Jika nanti Anda ingin menonaktifkan module, ubah nama file enable menjadi disable.
cd modules/consent
mv enable disable
Halaman web instalasi simpleSAMLphp
Setelah proses instalasi simpleSAMLphp, Anda dapat mengakses homepage instalasi Anda, yang berisi
beberapa informasi dan beberapa link untuk mengetes layanan yang ada. Jika mengikuti konfigurasi
diatas, maka simleSAMLphp dapat diakses dengan alamat :
https://service.example.org/simplesaml/
Tentu saja, link diatas tergantung dari konfigurasi Anda.
Peringatan
Jangan mengklik link yang ada, karena Anda belum mengeset apakah Anda ingin mengkonfigurasi
simpleSAMLphp akan menjadi Service Provider atau sebagai Identity Provider.
Mengaktifkan Modul Sanity Check
Untuk melakukan Sanity Check pada setup simpleSAML yang sudah kita lakukan, maka kita harus
meng-copy file konfigurasi Sanity Check :
(npsimplesamlasidp) cp
modules/sanitycheck/config-templates/config-sanitycheck.php config/
15
Memerika environment PHP Anda
Pada bagian bawah halaman instalasi ada beberapa tanda berwarna hijau. SimpleSAMLphp
menjalankan beberapa tes untuk melihat apakah prasyarat yang diperlukan dan direkomendasikan telah
dipenuhi. Jika ada tanda yang berwarna merah, Anda mungkin perlu menambahkan beberapa ekstensi
atau module ke PHP, seperti misalnya Anda memerlukan ekstensi LDAP PHP agar dapat menggunakan
module autentifikasi LDAP.
Langkah Selanjutnya
1. Menggunakan simpleSAMLphp sebagai SAML Service Provider
2. Menggunakan simpleSAMLphp sebagai Identitiy Provider
Dukungan
Beberapa situs komunitas simpleSAMLphp :
• homepage simpleSAMLphp, http://rnd.feide.no/simplesamlphp
• Daftar dokumentasi lengkap simpleSAMLphp berbahasa Inggris,
http://simplesamlphp.org/docs/
• Bergabung ke mailing list pengguna simpleSAMLphp,
http://rnd.feide.no/content/simplesamlphp-users-mailinglist
• Wiki simpleSAMLphp, https://ow.feide.no/simplesamlphp:start
Instalasi simpleSAMLphp di Lokasi Alternatif
Tip
Catatan
Referensi
1. simpleSAMLphp Installation and Configuration,
http://simplesamlphp.org/docs/stable/simplesamlphp-install
2. Authentication and identity services the 'Simple' way,
http://www.eifl.net/news/authentication-and-identity-services-simple-w
3. SMAL vs Shibboleth vs CAS, http://bit.ly/waznTY
4. Security Assertion Markup Language(SAML) V2.0 Technical Overview, http://bit.ly/84Sa1u
5. How To Create a SSL Certificate on Apache for Ubuntu 14.04,
16
https://www.digitalocean.com/community/tutorials/how-to-create-a-ssl-certificate-on-apache-fo
r-ubuntu-14-04
17

More Related Content

What's hot

Definisi data-warehouse
Definisi data-warehouseDefinisi data-warehouse
Definisi data-warehouse
Rian Wibowo
 
Pertemuan09 virus,trojandanworm
Pertemuan09 virus,trojandanwormPertemuan09 virus,trojandanworm
Pertemuan09 virus,trojandanworm
Roziq Bahtiar
 
Pengenalan aplikasi presentasi ella
Pengenalan aplikasi presentasi ellaPengenalan aplikasi presentasi ella
Pengenalan aplikasi presentasi ella
veranana
 
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQLLaporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Shofura Kamal
 

What's hot (20)

Jaringan Komputer : Konsep TCP/IP
Jaringan Komputer : Konsep TCP/IPJaringan Komputer : Konsep TCP/IP
Jaringan Komputer : Konsep TCP/IP
 
Dasar Virtualisasi
Dasar VirtualisasiDasar Virtualisasi
Dasar Virtualisasi
 
Soal essay basis data xi
Soal essay basis data xiSoal essay basis data xi
Soal essay basis data xi
 
Definisi data-warehouse
Definisi data-warehouseDefinisi data-warehouse
Definisi data-warehouse
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
Alat input output
Alat input outputAlat input output
Alat input output
 
TIK Kelas X semester 1
TIK Kelas X semester 1TIK Kelas X semester 1
TIK Kelas X semester 1
 
Pertemuan09 virus,trojandanworm
Pertemuan09 virus,trojandanwormPertemuan09 virus,trojandanworm
Pertemuan09 virus,trojandanworm
 
powerpoint hardware
powerpoint hardwarepowerpoint hardware
powerpoint hardware
 
Makalah sistem operasi microsoft windows dari pertama kali sampai versi terakhir
Makalah sistem operasi microsoft windows dari pertama kali sampai versi terakhirMakalah sistem operasi microsoft windows dari pertama kali sampai versi terakhir
Makalah sistem operasi microsoft windows dari pertama kali sampai versi terakhir
 
Testing&implementasi 2
Testing&implementasi 2Testing&implementasi 2
Testing&implementasi 2
 
Perangkat lunak (software)
Perangkat lunak (software)Perangkat lunak (software)
Perangkat lunak (software)
 
Pengenalan aplikasi presentasi ella
Pengenalan aplikasi presentasi ellaPengenalan aplikasi presentasi ella
Pengenalan aplikasi presentasi ella
 
Rekayasa Perangkat Lunak
Rekayasa Perangkat LunakRekayasa Perangkat Lunak
Rekayasa Perangkat Lunak
 
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQLLaporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
Laporan Praktikum Basis Data Modul I-Membangun Database SQL Pada MYSQL
 
Data Quality
Data QualityData Quality
Data Quality
 
Bab 1 pengantar komputer
Bab 1 pengantar komputerBab 1 pengantar komputer
Bab 1 pengantar komputer
 
soal latihan mikrotik
soal latihan mikrotik soal latihan mikrotik
soal latihan mikrotik
 
Jobsheet hotspot mikrotik m.adib z
Jobsheet hotspot mikrotik m.adib zJobsheet hotspot mikrotik m.adib z
Jobsheet hotspot mikrotik m.adib z
 
PASCAL ( MODUL 5)
PASCAL ( MODUL 5)PASCAL ( MODUL 5)
PASCAL ( MODUL 5)
 

Similar to Instalasi dan Konfigurasi simpleSAMLphp

Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
Instalasi simpleSAMLphp sebagai Identity Provider (IdP)Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
Wildan Maulana
 
Mensetup Google Apps sebagai IdP jenis openID dan Aplikasi Berbasis CakePHP ...
Mensetup Google Apps sebagai IdP jenis openID  dan Aplikasi Berbasis CakePHP ...Mensetup Google Apps sebagai IdP jenis openID  dan Aplikasi Berbasis CakePHP ...
Mensetup Google Apps sebagai IdP jenis openID dan Aplikasi Berbasis CakePHP ...
Wildan Maulana
 
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai SpMensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
Wildan Maulana
 
Emerging edtech's 2013 free education technology resources ebook 1-50.en.id
Emerging edtech's 2013 free education technology resources ebook 1-50.en.idEmerging edtech's 2013 free education technology resources ebook 1-50.en.id
Emerging edtech's 2013 free education technology resources ebook 1-50.en.id
zaenurdin zaenurdin
 
Manual aplikasi dapodikdas_v300_01082014
Manual aplikasi dapodikdas_v300_01082014Manual aplikasi dapodikdas_v300_01082014
Manual aplikasi dapodikdas_v300_01082014
abijand
 
Swing excerpt
Swing excerptSwing excerpt
Swing excerpt
malvicom
 

Similar to Instalasi dan Konfigurasi simpleSAMLphp (20)

Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
Instalasi simpleSAMLphp sebagai Identity Provider (IdP)Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
Instalasi simpleSAMLphp sebagai Identity Provider (IdP)
 
Mensetup Google Apps sebagai IdP jenis openID dan Aplikasi Berbasis CakePHP ...
Mensetup Google Apps sebagai IdP jenis openID  dan Aplikasi Berbasis CakePHP ...Mensetup Google Apps sebagai IdP jenis openID  dan Aplikasi Berbasis CakePHP ...
Mensetup Google Apps sebagai IdP jenis openID dan Aplikasi Berbasis CakePHP ...
 
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai SpMensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
Mensetup Google Apps sebagai IdP jenis openID dan Wordpress sebagai Sp
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
LaTeX InDesign with Smart Diagram Miicrosoft Word 2013
LaTeX InDesign with Smart Diagram Miicrosoft Word 2013LaTeX InDesign with Smart Diagram Miicrosoft Word 2013
LaTeX InDesign with Smart Diagram Miicrosoft Word 2013
 
Laporan ujikom
Laporan ujikomLaporan ujikom
Laporan ujikom
 
ok
okok
ok
 
Ka 06.-praktikum-paket-program-aplikasi
Ka 06.-praktikum-paket-program-aplikasiKa 06.-praktikum-paket-program-aplikasi
Ka 06.-praktikum-paket-program-aplikasi
 
Emerging edtech's 2013 free education technology resources ebook 1-50.en.id
Emerging edtech's 2013 free education technology resources ebook 1-50.en.idEmerging edtech's 2013 free education technology resources ebook 1-50.en.id
Emerging edtech's 2013 free education technology resources ebook 1-50.en.id
 
Modul Perangkat Lunak Presentasi
Modul Perangkat Lunak PresentasiModul Perangkat Lunak Presentasi
Modul Perangkat Lunak Presentasi
 
Mi 02.-praktikum-pemrograman-visual-1
Mi 02.-praktikum-pemrograman-visual-1Mi 02.-praktikum-pemrograman-visual-1
Mi 02.-praktikum-pemrograman-visual-1
 
03. prak.-pemrograman-visual-i-vb.net
03. prak.-pemrograman-visual-i-vb.net 03. prak.-pemrograman-visual-i-vb.net
03. prak.-pemrograman-visual-i-vb.net
 
Ka 01.-praktikum-algoritma-pemrograman-2
Ka 01.-praktikum-algoritma-pemrograman-2Ka 01.-praktikum-algoritma-pemrograman-2
Ka 01.-praktikum-algoritma-pemrograman-2
 
Modul Lembar Sebar (Spreadsheet)
Modul Lembar Sebar (Spreadsheet)Modul Lembar Sebar (Spreadsheet)
Modul Lembar Sebar (Spreadsheet)
 
Slims4dummies edisi revisi
Slims4dummies edisi revisiSlims4dummies edisi revisi
Slims4dummies edisi revisi
 
Manual aplikasi dapodikdas_v300_01082014
Manual aplikasi dapodikdas_v300_01082014Manual aplikasi dapodikdas_v300_01082014
Manual aplikasi dapodikdas_v300_01082014
 
Dasar java
Dasar javaDasar java
Dasar java
 
Centos administrator-beta-1
Centos administrator-beta-1Centos administrator-beta-1
Centos administrator-beta-1
 
Swing excerpt
Swing excerptSwing excerpt
Swing excerpt
 
Swing excerpt
Swing excerptSwing excerpt
Swing excerpt
 

More from Wildan Maulana

Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
Wildan Maulana
 
Pengembangan OpenThink SAS 2013-2014
Pengembangan OpenThink SAS 2013-2014Pengembangan OpenThink SAS 2013-2014
Pengembangan OpenThink SAS 2013-2014
Wildan Maulana
 
ICA – AtoM : Retensi Arsip
ICA – AtoM : Retensi ArsipICA – AtoM : Retensi Arsip
ICA – AtoM : Retensi Arsip
Wildan Maulana
 
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RWOpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
Wildan Maulana
 
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
Wildan Maulana
 
PostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
PostgreSQL BootCamp : Manajemen Master Data dengan SkyToolsPostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
PostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
Wildan Maulana
 
Konfigurasi simpleSAMLphp dengan Google Apps Sebagai Identity Provider
Konfigurasi simpleSAMLphp  dengan Google Apps Sebagai Identity ProviderKonfigurasi simpleSAMLphp  dengan Google Apps Sebagai Identity Provider
Konfigurasi simpleSAMLphp dengan Google Apps Sebagai Identity Provider
Wildan Maulana
 
River Restoration in Asia and Connection Between IWRM and River Restoration
River Restoration in Asia and Connection Between IWRM and River RestorationRiver Restoration in Asia and Connection Between IWRM and River Restoration
River Restoration in Asia and Connection Between IWRM and River Restoration
Wildan Maulana
 
Penilaian Siswa di Finlandia - Pendidikan Dasar
Penilaian Siswa di Finlandia - Pendidikan DasarPenilaian Siswa di Finlandia - Pendidikan Dasar
Penilaian Siswa di Finlandia - Pendidikan Dasar
Wildan Maulana
 
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and UsesProyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
Wildan Maulana
 
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang TuaOpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
Wildan Maulana
 
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
Wildan Maulana
 
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
Wildan Maulana
 
Master Plan Portal Universitas Negeri Pelangi
Master Plan Portal Universitas Negeri PelangiMaster Plan Portal Universitas Negeri Pelangi
Master Plan Portal Universitas Negeri Pelangi
Wildan Maulana
 
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
Wildan Maulana
 

More from Wildan Maulana (20)

Hasil Pendataan Potensi Desa 2018
Hasil Pendataan Potensi Desa 2018Hasil Pendataan Potensi Desa 2018
Hasil Pendataan Potensi Desa 2018
 
Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
Double for Nothing? Experimental Evidence on an Unconditional TeacherSalary I...
 
Ketahanan Pangan #1 : Gerakan Sekolah Menanam Melon
Ketahanan Pangan #1 : Gerakan Sekolah Menanam MelonKetahanan Pangan #1 : Gerakan Sekolah Menanam Melon
Ketahanan Pangan #1 : Gerakan Sekolah Menanam Melon
 
Pengembangan OpenThink SAS 2013-2014
Pengembangan OpenThink SAS 2013-2014Pengembangan OpenThink SAS 2013-2014
Pengembangan OpenThink SAS 2013-2014
 
ICA – AtoM : Retensi Arsip
ICA – AtoM : Retensi ArsipICA – AtoM : Retensi Arsip
ICA – AtoM : Retensi Arsip
 
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RWOpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
OpenThink Labs Workshop : Ketahanan Pangan Skala RT/RW
 
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
OpenThink Labs : Dengar Pendapat Komunitas ciliwung dengan kemen pu dan kemen...
 
PostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
PostgreSQL BootCamp : Manajemen Master Data dengan SkyToolsPostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
PostgreSQL BootCamp : Manajemen Master Data dengan SkyTools
 
Konfigurasi simpleSAMLphp dengan Google Apps Sebagai Identity Provider
Konfigurasi simpleSAMLphp  dengan Google Apps Sebagai Identity ProviderKonfigurasi simpleSAMLphp  dengan Google Apps Sebagai Identity Provider
Konfigurasi simpleSAMLphp dengan Google Apps Sebagai Identity Provider
 
River Restoration in Asia and Connection Between IWRM and River Restoration
River Restoration in Asia and Connection Between IWRM and River RestorationRiver Restoration in Asia and Connection Between IWRM and River Restoration
River Restoration in Asia and Connection Between IWRM and River Restoration
 
Optimasi Limpasan Air Limbah Ke Kali Surabaya (Segmen Sepanjang – Jagir) De...
Optimasi Limpasan Air Limbah  Ke Kali Surabaya (Segmen Sepanjang – Jagir)  De...Optimasi Limpasan Air Limbah  Ke Kali Surabaya (Segmen Sepanjang – Jagir)  De...
Optimasi Limpasan Air Limbah Ke Kali Surabaya (Segmen Sepanjang – Jagir) De...
 
Penilaian Siswa di Finlandia - Pendidikan Dasar
Penilaian Siswa di Finlandia - Pendidikan DasarPenilaian Siswa di Finlandia - Pendidikan Dasar
Penilaian Siswa di Finlandia - Pendidikan Dasar
 
Statistik Listrik
Statistik ListrikStatistik Listrik
Statistik Listrik
 
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and UsesProyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
Proyek Al-'Alaq : Electric Bicycles ; History, Characteristics, and Uses
 
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang TuaOpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
OpenThink SAS : Interaksi Antara Sekolah, Wali Kelas, Siswa dan Orang Tua
 
Menggunakan AlisJK : Equating
Menggunakan AlisJK : EquatingMenggunakan AlisJK : Equating
Menggunakan AlisJK : Equating
 
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
Menggunakan AlisJK (Analisis Lembar Jawaban Kompuer/Analisis Item Soal)
 
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
Perkembangan OpenThink SAS a.k.a SIMMSIT, 2011-2012
 
Master Plan Portal Universitas Negeri Pelangi
Master Plan Portal Universitas Negeri PelangiMaster Plan Portal Universitas Negeri Pelangi
Master Plan Portal Universitas Negeri Pelangi
 
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
Koperasi NP : Program Penanggulangan Kemiskinan Kabinet Indonesia Bersatu II ...
 

Instalasi dan Konfigurasi simpleSAMLphp

  • 1. Instalasi dan Konfigurasi simpleSAMLphp OpenThink Labs Workshops Membangun Platform Single Sign On (SSO) berbasis Security Assertion Markup Language (SAML) Wildan Maulana <wildan.m@openthinklabs.com> Senin 27 April 2015 Daftar Isi Dokumentasi dan Berita terkait simpleSAMLphp.....................................................................................3 Versi Pengembangan..................................................................................................................................3 Prasyarat.....................................................................................................................................................3 Download dan Instalasi simpleSAMLphp.................................................................................................3 Melakukan upgrade dari versi sebelumnya ke versi terbaru simpleSAMLphp.........................................4 Mengupgrade File-File Konfigurasi......................................................................................................4 Mengupgrade File-File Metadata..........................................................................................................5 Mengkonfigurasi Apache...........................................................................................................................5 Mengkonfigurasi simpleSAMLphp : config.php.......................................................................................6 Mengkonfigurasi PHP................................................................................................................................6 Mengirim e-mail dari PHP....................................................................................................................6 Module-Module Bawaan yang Tersedia....................................................................................................7 adfs........................................................................................................................................................7 aggregator..............................................................................................................................................7 aggregator2............................................................................................................................................7 aselect....................................................................................................................................................7 authcrypt................................................................................................................................................7 authfacebook.........................................................................................................................................7 authlinkedin...........................................................................................................................................8 authmyspace..........................................................................................................................................8 authorize................................................................................................................................................8 authtwitter..............................................................................................................................................8 authwindowslive....................................................................................................................................8 authX509...............................................................................................................................................8 authYubiKey..........................................................................................................................................8 autotest...................................................................................................................................................9 cas..........................................................................................................................................................9 casserver................................................................................................................................................9 cdc.........................................................................................................................................................9 consent...................................................................................................................................................9 consentAdmin........................................................................................................................................9 1
  • 2. consentSimpleAdmin............................................................................................................................9 core......................................................................................................................................................10 cron......................................................................................................................................................10 discojuice.............................................................................................................................................11 discopower...........................................................................................................................................11 exampleattributeserver........................................................................................................................11 exampleauth.........................................................................................................................................11 expirycheck..........................................................................................................................................11 InfoCard...............................................................................................................................................11 ldap......................................................................................................................................................11 logpeek................................................................................................................................................11 memcacheMonitor...............................................................................................................................11 metaedit...............................................................................................................................................11 metarefresh..........................................................................................................................................11 modinfo...............................................................................................................................................12 multiauth..............................................................................................................................................12 oauth....................................................................................................................................................12 openid..................................................................................................................................................12 openidProvider....................................................................................................................................12 portal....................................................................................................................................................12 preparedwarning..................................................................................................................................12 radius...................................................................................................................................................12 saml.....................................................................................................................................................12 saml2debug..........................................................................................................................................12 sanitycheck..........................................................................................................................................13 smartnameattribute..............................................................................................................................13 sqlauth.................................................................................................................................................13 statistics...............................................................................................................................................13 themefeidernd......................................................................................................................................13 Mengaktifkan Module..............................................................................................................................13 Halaman web instalasi simpleSAMLphp.................................................................................................13 Peringatan............................................................................................................................................14 Mengaktifkan Modul Sanity Check....................................................................................................14 Memerika environment PHP Anda.....................................................................................................14 Langkah Selanjutnya................................................................................................................................14 Dukungan ................................................................................................................................................14 Instalasi simpleSAMLphp di Lokasi Alternatif.......................................................................................15 Tip........................................................................................................................................................15 Catatan.................................................................................................................................................15 Referensi .................................................................................................................................................15 2
  • 3. Dokumentasi dan Berita terkait simpleSAMLphp Dokumentasi ini merupakan saduran dari dokumentasi resmi simpleSAMLphp dan merupakan bagian dari serangkaian dokumentasi lainnya terkait simpleSAMLphp. • Daftar lengkap dokumentasi resmi simpleSAMLphp, http://simplesamlphp.org/docs/stable/ • Berita terbaru mengenai simpleSAMLphp, https://rnd.feide.no/category/simplesamlphp/ • Homepage simpleSAMLphp, http://simplesamlphp.org/ Versi Pengembangan Prasyarat • Webserver yang dapat mengeksekusi script PHP • Versi PHP yang digunakan >= 5.2.0 • Mendukung beberapa ekstensi PHP berikut : ◦ Selalu memerlukan : date, dom, hash, libxml, openssl, pcre, SLP dan zlib ◦ Ketika mengenkripsi assertions : mcrypt ◦ Ketika melakukan autentifikasi ke server LDAP : ldap ◦ Ketika melakukan autentifikasi ke server RADIUS : radius ◦ Ketika menyimpan informasi session ke server memcache : memcache ◦ Ketika menggunakan database : ▪ Selalu : PDO ▪ Driver database : (mysql, pgsql, ...) Paket software yang perlu diinstall bervarisai dari satu platform dan distribusi ke platform dan distribusi lainnya. Silahkan baca dokumentasi platform dan distribusi sistem operasi Anda. Download dan Instalasi simpleSAMLphp Rilis terbaru simpleSAMLphp dapat ditemukan dialamat : http://code.google.com/p/simplesamlphp/. Untuk mendownload versi stabil terbaru, download saja file arsip yang berada pada bagian Featured Download. 3
  • 4. Masuklah ke direktori dimana Anda ingin menginstall simpleSAMLphp, dan ekstraklah file arsip yang baru saja Anda download : cd /opt tar xzf simplesamlphp-1.x.y.tar.gz mv simplesamlphp-1.x.y simplesamlphp Melakukan upgrade dari versi sebelumnya ke versi terbaru simpleSAMLphp Ekstrak versi baru simpleSAMLphp : cd /opt tar xzv simplesamlphp-1.x.y.tar.gz Copy file-file konfigurasi dari versi sebelumnya : cd /opt/simplesamlphp-1.x.y rm -rfv config metadata cp -rfv ../simplesamlphp/config config cp -rfv ../simplesamlphp/metadata metadata Gantilah versi yang lama dengan versi yang baru : mv simplesamlphp simplesamlphp.old mv simplesamlphp-1.x.y simplesamlphp Jika format file-file config dan metadata berubah dari versi lama simpleSAMLphp yang Anda gunakan (periksalah log revisi), Anda mungkin harus mengupdate konfigurasi dan metadata Anda setelah mengupdate kode simpleSAMLphp. Mengupgrade File-File Konfigurasi Pendekatan terbaik untuk melakukan hal ini adalah dengan manjalankan diff antara versi config.php Anda yang lama dan config.php yang baru yang berada pada config-templates/config.php dan lakukanlah modifikasi yang diperlukan pada template 4
  • 5. yang baru. Dengan cara ini, maka dapat dipastikan semua entri pada versi terbaru config.php akan terbawa, dan sekaligus menyimpan hasil modifikasi yang telah Anda lakukan. Mengupgrade File-File Metadata Kemungkinan besar format metadata tidak akan mengalami perubahan. Jika memang ia mengalami perubahan, Anda akan menerima pesan error yang jelas saat proses startup yang mengindikasikan bagaimana dan apa yang harus Anda update. Anda sebaiknya melihat isi metadata yang berada di direktori metadata-templates setelah proses upgrade untuk melihat apakah nilai default yang direkomendasika telah berubah. Mengkonfigurasi Apache Contoh dibawah mengasumsikan kalau simpleSAMLphp diinstall di lokasi default, /opt/simplesamlphp. Anda bisa saja memiliki lokasi yang berbeda, tapi Anda harus mengubah konfigurasi jika ingin melakukan hal ini. Subdirektori simplesamlphp yang harus dapat diakses via web hanya direktori www saja. Ada beberapa cara untuk menyimpan simpleSAMLphp tergantun kepada struktur web sites Anda di Apache. Salah satu konfigurasi terbaik adalah dengan menggunakan Alias, khususnya jika simpleSAMLphp dijadikan sebagai Service Provider. Untuk membuat SSL Certificate silahkan lihat [5] Buka file konfigurasi Virtual Host yang ingin Anda gunakan untuk menjalankan simpleSAMLphp. Konfigurasinya akan seperti berikut (sesuaikan dengan kebutuhan Anda) : <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName http://idp.negeripelangi.org DocumentRoot /home/www/idp <Directory /home/www/idp> Options FollowSymLinks AllowOverride All Require all granted </Directory> RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 5
  • 6. ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin info@openthinklabs.com ServerName idp.negeripelangi.org ServerAlias www.idp.negeripelangi.org DocumentRoot /home/www/idp <Directory /home/www/idp Options FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/idp_error.log CustomLog ${APACHE_LOG_DIR}/idp_access.log combined SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key <FilesMatch ".(cgi|shtml|phtml|php)$"> 6
  • 7. SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> BrowserMatch "MSIE [2-6]" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0 BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown </VirtualHost> </IfModule> Perhatikan directive Alias, semua url yang sesuai dengan http(s)://services.example.com/simplesaml/* akan ditangani oleh simpleSAMLphp. Secara default simpleSAMLphp menawarkan beberapa interface, yang semuanya berada didalam direktori www dari lokasi instalasi simpleSAMLphp Anda. Anda dapat menggunakan Alias apa saja, tetapi Anda harus mengubah 1 entri konfigurasi di config/config.php, yaitu : $config = array ( [...] 'baseurlpath' => 'simplesaml/', Mengkonfigurasi simpleSAMLphp : config.php Ada beberapa konfigurasi di config.php yang harus Anda segera ubah : 1. Mengeset password Administrator. Hal ini diperlukan agar dapat mengakses beberapa halaman di antar muka instalasi simpleSAMLphp 'auth.adminpassword' => 'setnewpasswordhere', 2. Mengeset secret salt. Yaitu sebuah string acak. Beberapa bagian dari simpleSAMLphp memerlukan salt ini. SimpleSAMLphp akan menampilkan pesan error jika salt ini belum diubah dari nilai defaultnya. Perintah berikut akan membantu Anda untuk menggenerate string acak pada (beberapa) sistem Unix : 7
  • 8. tr -c -d '0123456789abcdefghijklmnopqrstuvwxyz' </dev/urandom | dd bs=32 count=1 2>/dev/null;echo Berikut ini adalah contoh opsi konfigurasinya : 'secretsalt' => 'randombytesinsertedhere', 3. Mengeset informasi kontak teknikal. Informasi ini akan tersedia pada metadata yang digenerate. Alamat e-mail juga akan digunakan untuk menerima pesan error yang dikirimkan secara otomatis oleh simpleSAMLphp. Berikut adalah contohnya : 'technicalcontact_name' => 'Wildan Maulana', 'technicalcontact_email' => 'wildan.m@openthinklabs.com', 4. Mengeset timezone yang Anda gunakan : 'timezone' => 'Asia/Jakarta', Mengkonfigurasi PHP Mengirim e-mail dari PHP Pastikan konfigurasi instalasi PHP Anda dapat mengirim email, karena beberapa bagian simpleSAMLphp memerlukan hal ini. Module-Module Bawaan yang Tersedia adfs Merupakan module yang mengimplementasikan protokol Active Directory Federation Services (ADFS) untuk Identity Provider. aggregator Module ini mangaggregate sekumpulan entitas SAML menjadi dokumen SAML 2.0 dengan EntitiesDescriptor yang memiliki beberapa entitas didalamnya. Informasi lebih lanjut, http://simplesamlphp.org/docs/stable/aggregator:aggregator 8
  • 9. aggregator2 Merupakan module eksperimental untuk mengaggregate metadata. Informasi lebih lanjut, http://simplesamlphp.org/docs/stable/aggregator2:aggregator2 aselect Module yang memungkinkan anda untuk menggunakan sumber autentifikasi A-Select melalui simpleSAMLphp. Untuk informasi lebih lanjut tentang module ini silahkan baca http://simplesamlphp.org/docs/stable/aselect:aselect, sedangkan untuk A-Select, Anda dapat membaca http://www.aselect.org/home.html authcrypt Module ini memungkinkan anda untuk menggunakan sumber autentifikasi username dan password yang dihash atau sumber autentifikasi yang berupa file 'Htpasswd' Apache. authfacebook Dengan module ini anda dapat menggunakan sumber autentifikasi Facebook dengan simpleSAMLphp. Untuk informasi lebih lanjut, silahkan baca http://simplesamlphp.org/docs/stable/authfacebook:authfacebook authlinkedin Dengan module ini anda dapat menggunakan sumber autentifikasi LinkedIn. Jika anda mengaktifkan, module ini, jangan lupa untuk mengaktifkan juga module oauth, karena jika tidak, anda akan mendapatkan error seperti berikut : simplesaml Fatal error: Class 'sspmod_oauth_Consumer' not found in... Untuk informasi lebih lanjut, silahkan baca http://simplesamlphp.org/docs/stable/authlinkedin:oauthlinkedin authmyspace Dengan module ini Anda dapat menggunakan MySpace sebagai sumber autentifikasi. Untuk informasi selanjutnya, silahkan lihat baca http://simplesamlphp.org/docs/stable/authmyspace:oauthmyspace. 9
  • 10. authorize Modul ini menyediakan filter autorisasi yang berdasarkan regex khususnya untuk aplikasi-aplikasi yang tidak secara tegas memisahkan antara autentifikasi dan autorisasi. Untuk informasi lebih lanjut mengenai modul ini silahkan lihat, http://simplesamlphp.org/docs/stable/authorize:authorize authtwitter Dengan menggunakan modul ini Anda dapat menggukana twitter sebagai sumber autentifikasi. Untuk informasi lebih lanjut tentang module ini, silahkan kunjungi, http://simplesamlphp.org/docs/stable/authtwitter:oauthtwitter authwindowslive Dengan module ini Anda dapat menggunakan Windows Live ID sebagai sumber autentifikasi. Untuk informasi lebih lanjut tentang module ini, silahkan baca http://simplesamlphp.org/docs/stable/authwindowslive:windowsliveid. authX509 Dengan module ini, Anda dapat menggunakan X509 sebagai sumber autentifikasi. Untuk informasi lebih lanjut, silahkan baca http://simplesamlphp.org/docs/stable/authX509:authX509 authYubiKey Dengan menggunakan module ini, Anda dapat menggunakan authYubiKey sebagai sumber autentifikasi. Untuk informasi lebih lanjut, silahkan baca https://rnd.feide.no/2009/01/17/yubikey_authentication_module_in_simplesamlphp/ autotest Module ini menyediakan antarmuka untuk melakukan testing otomatis dari berbagai sumber autentifikasi. Untuk informasi lebih lanjut mengenai modul ini, silahkan kunjungi : http://simplesamlphp.org/docs/stable/autotest:test cas Dengan menggunakan module ini, Anda dapat menggunakan CAS (Central Authentication Service) sebagai sumber autentifikasi. Untuk informasi lebih lanjut mengenai modul ini silahkan baca : http://simplesamlphp.org/docs/stable/cas:cas 10
  • 11. casserver Dengan menggunakan module ini, Anda dapat menggunakan simpleSAMLphp sebagai CAS Server, untuk informasi lebih lanjut silahkan baca, http://bit.ly/xZUzaN cdc Module ini digunakan untuk mendukung apa yang disebut dengan Common Domain Cookie. Module ini digunakan untuk mengeset dan membaca Common Domain Cookies. consent Modul consent (persetujuan) diiplementasikan sebagai filter pemroses autentifikasi. Modul ini dapat dikonfigurasikan di file config.php global atau pada file metadata SP Remote atau IdP hosted. Modul ini telah diaktifkan secara default, untuk mengetahui lebih lanjut mengenai modul consent, silahkan baca http://simplesamlphp.org/docs/stable/consent:consent consentAdmin Modul consentAdmin merupakan addon bagi modul consent. Ini artinya, Anda tidak dapat menggunakan modul consentAdmin tanpa mengaktifkan modul consent. Modul consentModule hanya bekerja jika modul consent menggunakan database untuk menyimpan consent. Untuk membaca informasi lebih jauh mengenai modul consentAdmin, silahkan baca, http://simplesamlphp.org/docs/stable/consentAdmin:consentAdmin. consentSimpleAdmin Kurang lebih memiliki fungsi yang sama dengan consentAdmin, tetapi ketika penulis menulis dokumentasi ini, apa saja perbedaan fitur di consentAdmin dan consentSimpleAdmin masih belum dicoba. core Modul ini merupakan modul inti dari simpleSAMLphp yang tentu saja telah diaktifkan secara default. Pada modul ini terdapat beberapa pemroses autentifikasi default, diantaranya adalah : • core:AttributeAdd: Menambahkan attribut-attribut ke response. http://simplesamlphp.org/docs/stable/core:authproc_attributeadd • core:AttributeAlter: Mencari dan mengganti nilai sebuah attribut. http://simplesamlphp.org/docs/stable/core:authproc_attributealter • core:AttributeLimit: Membatasi attribute pada respons. http://simplesamlphp.org/docs/stable/core:authproc_attributelimit • core:AttributeMap: Mengubah nama dari attribut. 11
  • 12. http://simplesamlphp.org/docs/stable/core:authproc_attributemap • core:AttributeRealm: Membuat attribut dengan realm dari user. http://simplesamlphp.org/docs/stable/core:authproc_attributerealm • core:GenerateGroups: Menggenerate attribut group untuk user.http://simplesamlphp.org/docs/stable/core:authproc_generategroups • core:LanguageAdaptor: Mentransfer setingan bahasa dari IdP ke SP. http://simplesamlphp.org/docs/stable/core:authproc_languageadaptor • core:PHP: Memodifikasi attribut dengan kode PHP yang dibuat sendiri. http://simplesamlphp.org/docs/stable/core:authproc_php • core:ScopeAttribute: Menambahkan scope ke attribut. http://simplesamlphp.org/docs/stable/core:authproc_scopeattribute • core:ScopeFromAttribute: Membuat attribut baru yang berdasarkan pada scope pada attribut yang berbeda. http://simplesamlphp.org/docs/stable/core:authproc_scopefromattribute • core:StatisticsWithAttribute: Membuat statistic logentry. http://simplesamlphp.org/docs/stable/core:authproc_statisticswithattribute • core:TargetedID: Menggenerate attribute eduPersonTargetedID. http://simplesamlphp.org/docs/stable/core:authproc_targetedid • core:WarnShortSSOInterval: Memberikan peringatan jika user log in ke SP yang sama dalam selang beberapa detik. http://simplesamlphp.org/docs/stable/core:authproc_warnshortssointerval cron ... discojuice ... discopower ... exampleattributeserver ... exampleauth ... 12
  • 13. expirycheck ... InfoCard ... ldap Dengan modul ini Anda dapat melakukan autentifikasi terhadap server LDAP. logpeek ... memcacheMonitor .... metaedit ... metarefresh ... modinfo ... multiauth Modul ini menyediakan sebuah metode agar user dapat memilih sumber autentifikasi dari daftar yang ada. oauth ... openid ... 13
  • 14. openidProvider SimpleSAMLphp dapat berfungsi sebagai provider OpenID. Dengan ini, maka Anda dapat mengintegrasikan OpenID ke IdP yang telah ada, atau menambahkan bridge antara OpenID dan SAML 2.0 portal ... preparedwarning .. radius Dengan modul ini Anda dapat menggunakan server radius sebagai sumber autentifikasi. saml ... saml2debug ... sanitycheck ... smartnameattribute ... sqlauth ... statistics ... themefeidernd ... 14
  • 15. Mengaktifkan Module Jika Anda ingin mengaktifkan beberapa module yang diinstall bersama simpleSAMLphp, tetapi secara default dinonaktifkan, Anda harus membuat sebuah file kosong di direktori module yang tersebut yang diberi nama enable. # Mengaktifkan modul consent cd modules ls -l cd consent touch enable Jika nanti Anda ingin menonaktifkan module, ubah nama file enable menjadi disable. cd modules/consent mv enable disable Halaman web instalasi simpleSAMLphp Setelah proses instalasi simpleSAMLphp, Anda dapat mengakses homepage instalasi Anda, yang berisi beberapa informasi dan beberapa link untuk mengetes layanan yang ada. Jika mengikuti konfigurasi diatas, maka simleSAMLphp dapat diakses dengan alamat : https://service.example.org/simplesaml/ Tentu saja, link diatas tergantung dari konfigurasi Anda. Peringatan Jangan mengklik link yang ada, karena Anda belum mengeset apakah Anda ingin mengkonfigurasi simpleSAMLphp akan menjadi Service Provider atau sebagai Identity Provider. Mengaktifkan Modul Sanity Check Untuk melakukan Sanity Check pada setup simpleSAML yang sudah kita lakukan, maka kita harus meng-copy file konfigurasi Sanity Check : (npsimplesamlasidp) cp modules/sanitycheck/config-templates/config-sanitycheck.php config/ 15
  • 16. Memerika environment PHP Anda Pada bagian bawah halaman instalasi ada beberapa tanda berwarna hijau. SimpleSAMLphp menjalankan beberapa tes untuk melihat apakah prasyarat yang diperlukan dan direkomendasikan telah dipenuhi. Jika ada tanda yang berwarna merah, Anda mungkin perlu menambahkan beberapa ekstensi atau module ke PHP, seperti misalnya Anda memerlukan ekstensi LDAP PHP agar dapat menggunakan module autentifikasi LDAP. Langkah Selanjutnya 1. Menggunakan simpleSAMLphp sebagai SAML Service Provider 2. Menggunakan simpleSAMLphp sebagai Identitiy Provider Dukungan Beberapa situs komunitas simpleSAMLphp : • homepage simpleSAMLphp, http://rnd.feide.no/simplesamlphp • Daftar dokumentasi lengkap simpleSAMLphp berbahasa Inggris, http://simplesamlphp.org/docs/ • Bergabung ke mailing list pengguna simpleSAMLphp, http://rnd.feide.no/content/simplesamlphp-users-mailinglist • Wiki simpleSAMLphp, https://ow.feide.no/simplesamlphp:start Instalasi simpleSAMLphp di Lokasi Alternatif Tip Catatan Referensi 1. simpleSAMLphp Installation and Configuration, http://simplesamlphp.org/docs/stable/simplesamlphp-install 2. Authentication and identity services the 'Simple' way, http://www.eifl.net/news/authentication-and-identity-services-simple-w 3. SMAL vs Shibboleth vs CAS, http://bit.ly/waznTY 4. Security Assertion Markup Language(SAML) V2.0 Technical Overview, http://bit.ly/84Sa1u 5. How To Create a SSL Certificate on Apache for Ubuntu 14.04, 16