ตั้งค่าพร็อกซีสำหรับการดาวน์โหลดเมทาดาทา SAML ใน Spring Security รุ่นเก่า
ตั้งค่า HTTP ไคลเอนต์ที่ถูกฉีดเข้าใน HTTPMetadataProvider รุ่นเก่าของ Spring Security SAML สำหรับการดาวน์โหลดเมทาดาทาฝั่งเซิร์ฟเวอร์
แอปพลิเคชัน Spring Security SAML รุ่นเก่าสามารถดึงเมทาดาทาของผู้ให้บริการข้อมูลระบุตัวตนจากกระบวนการฝั่งเซิร์ฟเวอร์ได้โดยใช้ HTTPMetadataProvider การดาวน์โหลดขาออกนั้นใช้ HTTP ไคลเอนต์ที่มอบให้ผู้ให้บริการเมทาดาทา
สำหรับแอปพลิเคชันที่ใช้รูปแบบการตั้งค่า Spring Security SAML 1.0.x/OpenSAML 2 ให้ตั้งค่า Apache Commons HttpClient ก่อนทำการฉีด:
org.apache.commons.httpclient.HttpClient metadataHttpClient =
new org.apache.commons.httpclient.HttpClient();
metadataHttpClient.getHostConfiguration()
.setProxy("proxy.example", 8080);ส่งออบเจ็กต์ที่ตั้งค่าแล้วนั้นเป็นอาร์กิวเมนต์ตัวสร้างของ HTTP ไคลเอนต์ของ org.opensaml.saml2.metadata.provider.HTTPMetadataProvider พร้อมกับตัวจับเวลาและ URL ของเมทาดาทาที่มีอยู่ ในรูปแบบ XML บีนของไคลเอนต์ที่อ้างอิงต้องเป็นอินสแตนซ์ที่ตั้งค่าไว้นี้เท่านั้น
คงพูลพาร์เซอร์ที่มีอยู่ของผู้ให้บริการ การตั้งค่าการรีเฟรช และตัวจัดการเมทาดาทาโดยรอบไว้ การเปลี่ยนเส้นทางไม่ใช่การแทนที่หน้าที่เหล่านี้
URL ของเมทาดาทายังคงเป็น URL ของผู้ให้บริการข้อมูลระบุตัวตน โฮสต์ของพร็อกซีอยู่บน HTTP ไคลเอนต์ สำหรับ URL เมทาดาทาที่ได้รับอนุมัติและเข้าถึงได้สาธารณะ ผู้สมัคร HTTP จากรายการพร็อกซี HTTPสามารถเติมโฮสต์และพอร์ตของไคลเอนต์นั้นได้ เมื่ออนุญาตให้ใช้ตัวกลางสาธารณะและไม่เก็บข้อมูลรับรองของพร็อกซี นี่คือเส้นทางการดึงข้อมูลฝั่งเซิร์ฟเวอร์ การเปลี่ยนเส้นทางของเบราว์เซอร์ไปยังผู้ให้บริการข้อมูลระบุตัวตนที่สำเร็จไม่ได้แสดงว่าเซิร์ฟเวอร์แอปพลิเคชันสามารถดาวน์โหลดหรือรีเฟรชเมทาดาทาผ่านข้อจำกัดเครือข่ายของตนเองได้
ใช้การตั้งค่านี้เฉพาะกับคลาสรุ่นเก่าที่ระบุไว้ที่นี่เท่านั้น การรองรับ Spring Security saml2 สมัยใหม่ใช้ API อื่น และบีนที่เขียนสำหรับส่วนขยายเดิมไม่สามารถใช้แทนการตั้งค่าเมทาดาทาปัจจุบันได้