Aplikasi Spring Security SAML lama dapat mengambil metadata penyedia identitas dari proses server menggunakan HTTPMetadataProvider. Unduhan keluar itu memakai klien HTTP yang diberikan kepada penyedia metadata.

Untuk aplikasi yang memakai gaya konfigurasi Spring Security SAML 1.0.x/OpenSAML 2, konfigurasikan Apache Commons HttpClient-nya sebelum disuntikkan:

org.apache.commons.httpclient.HttpClient metadataHttpClient =
    new org.apache.commons.httpclient.HttpClient();
metadataHttpClient.getHostConfiguration()
    .setProxy("proxy.example", 8080);

Teruskan objek yang telah dikonfigurasi itu sebagai argumen konstruktor klien HTTP org.opensaml.saml2.metadata.provider.HTTPMetadataProvider, bersama timer dan URL metadata yang sudah ada. Dalam konfigurasi XML, bean klien yang dirujuk harus berupa instans yang telah dikonfigurasi ini.

Pertahankan kumpulan parser penyedia yang ada, konfigurasi penyegaran, dan pengelola metadata di sekitarnya. Mengubah rute tidak menggantikan tanggung jawab tersebut.

URL metadata tetap URL penyedia identitas. Host proxy berada pada klien HTTP. Untuk URL metadata yang disetujui dan dapat dijangkau publik, kandidat HTTP dari daftar proxy HTTP dapat mengisi host dan port klien tersebut bila perantara publik diizinkan dan tidak ada kredensial proxy yang disimpan. Ini jalur pengambilan di sisi server: pengalihan browser yang berhasil ke penyedia identitas tidak menunjukkan bahwa server aplikasi dapat mengunduh atau menyegarkan metadata melalui pembatasan jaringannya sendiri.

Gunakan konfigurasi ini hanya untuk kelas lama yang disebutkan di sini. Dukungan Spring Security saml2 modern memakai API lain, dan bean yang ditulis untuk ekstensi lama tidak dapat dipertukarkan dengan konfigurasi metadata saat ini.

Artikel terkait