ഒരു പഴയ 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);

ആ കോൺഫിഗർ ചെയ്ത ഒബ്ജക്റ്റ് org.opensaml.saml2.metadata.provider.HTTPMetadataProvider-ന്റെ HTTP ക്ലയന്റ് കൺസ്ട്രക്ടർ ആർഗ്യുമെന്റായി, നിലവിലുള്ള ടൈമറും മെറ്റാഡാറ്റ URL-ഉം സഹിതം നൽകുക. XML കോൺഫിഗറേഷനിൽ, റഫർ ചെയ്യുന്ന ക്ലയന്റ് bean ഈ കോൺഫിഗർ ചെയ്ത ഇൻസ്റ്റൻസ് തന്നെയായിരിക്കണം.

പ്രൊവൈഡറിന്റെ നിലവിലുള്ള പാർസർ പൂൾ, പുതുക്കൽ കോൺഫിഗറേഷൻ, ചുറ്റുമുള്ള മെറ്റാഡാറ്റ മാനേജർ എന്നിവ നിലനിർത്തുക. റൂട്ട് മാറ്റുന്നത് ആ ഉത്തരവാദിത്തങ്ങളെ മാറ്റിസ്ഥാപിക്കുന്നില്ല.

മെറ്റാഡാറ്റ URL ഐഡന്റിറ്റി പ്രൊവൈഡറിന്റെ URL തന്നെയായി തുടരും. പ്രോക്സി ഹോസ്റ്റ് HTTP ക്ലയന്റിലായിരിക്കണം. അംഗീകരിക്കപ്പെട്ടതും പൊതുവെ എത്തിച്ചേരാവുന്നതുമായ മെറ്റാഡാറ്റ URL-ന് HTTP പ്രോക്സി പട്ടികയിൽ നിന്നുള്ള HTTP സ്ഥാനാർത്ഥിക്ക് ആ ക്ലയന്റിന്റെ ഹോസ്റ്റും പോർട്ടും പൂരിപ്പിക്കാം, പൊതു ഇടനിലക്കാർ അനുവദനീയമാകുകയും പ്രോക്സി ക്രെഡൻഷ്യലുകൾ സൂക്ഷിക്കാതിരിക്കുകയും ചെയ്യുമ്പോൾ. ഇത് സെർവർ വശത്തെ എടുക്കൽ പാതയാണ്: ബ്രൗസർ ഐഡന്റിറ്റി പ്രൊവൈഡറിലേക്ക് വിജയകരമായി റീഡയറക്ട് ചെയ്തത് ആപ്ലിക്കേഷൻ സെർവറിന് സ്വന്തം നെറ്റ്വർക്ക് നിയന്ത്രണങ്ങളിലൂടെ മെറ്റാഡാറ്റ ഡൗൺലോഡ് ചെയ്യാനോ പുതുക്കാനോ കഴിയുമെന്ന് കാണിക്കുന്നില്ല.

ഈ കോൺഫിഗറേഷൻ ഇവിടെ പേരിട്ട പഴയ ക്ലാസുകൾക്ക് മാത്രം ഉപയോഗിക്കുക. ആധുനിക Spring Security saml2 പിന്തുണ മറ്റൊരു API ഉപയോഗിക്കുന്നു, പഴയ എക്സ്റ്റൻഷനായി എഴുതിയ bean അതിന്റെ നിലവിലെ മെറ്റാഡാറ്റ കോൺഫിഗറേഷനുമായി പരസ്പരം മാറ്റാനാവില്ല.

അനുബന്ധ ലേഖനങ്ങൾ