การติดตั้ง Shibboleth Single Sign-On
ตอนที่ 13 - การปรับแต่งหน้าล็อกอิน (ตอนจบ)
21. การทำให้หน้าล็อกอินแตกต่างกันไปแต่ละแอพพลิเคชัน หากเราต้องการให้หน้าล็อกอินแตกต่างกันไปในแต่ละแอพพลิเคชัน เช่น ปัจจุบันเรามีแอพพลิเคชันอยู่ 3 ตัวคือ app1, app2 และ app3 แต่ไฟล์ที่เราใช้ทำหน้าล็อกอินจะเป็นไฟล์เดียวกันทั้งหมดคือไฟล์ login.jsp ที่อยู่ในโฟลเดอร์ apache-tomcat-6.0.18\webapps\idp ดังนั้นหากเราต้องการให้ผู้ใช้เห็นหน้าล็อกอินแตกต่างกันไปในแต่ละแอพพลิเคชัน เราจำเป็นต้องแก้ไขโปรแกรมที่ Shibbolet IdP เขียนไว้ให้ในหน้า login.jsp นั่นเอง 21.1 ดึงชื่อแอพพลิเคชันผ่านทาง _shibstate_xxx จากการสำรวจดูในค่า Cookie พบว่า Shibboleth SP จะฝังตำแหน่งที่ผู้ใช้รีเควสต์เข้ามาไว้ในคุ๊กกี้ชื่อว่า _shibstate_xxxx โดยตัว xxxx ด้านหลังเป็นรหัสตัวเลขที่ SP สร้างขึ้นมาและเปลี่ยนแปลงไปเรื่อย ดังนั้นวิธีง่ายๆที่เราจะได้ความแตกต่างกันในแต่ละแอพพลิเคชันคือ เอาชื่อแอพพลิเคชันที่ติดพาธ URL ที่อยู่ในคุ๊กกี้ตัวนี้ เปิดไปที่ไฟล์ login.jsp ของ IdP ปกติไฟล์นี้จะอยู่ในโฟลเดอร์ apache-tomcat-6.0.18\webapps\idp เปิดขึ้นมาแก้ไขโดยเติมโปรแกรมเข้าไปดังนี้ ซอร์สโค้ด 6 ไฟล์ login.jsp ที่ใช้เป็นหน้าล็อกอิ