Existe-t-il un exemple complet d'utilisation de la bibliothèque Open SAML v3? Je ne trouve aucune documentation et selon https://wiki.shibboleth.net/confluence/display/OpenSAML/Home la v2 est EOL.Comment utiliser opensaml v3? Il y a peu ou pas de documentation et v2 est EOL
J'utilise le code suivant pour obtenir SAML assertion-
private UnmarshallerFactory unmarshallerFactory;
private DocumentBuilder docBuilder;
@PostConstruct
public void init() {
try {
InitializationService.initialize();
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
documentBuilderFactory.setNamespaceAware(true);
docBuilder = documentBuilderFactory.newDocumentBuilder();
unmarshallerFactory = XMLObjectProviderRegistrySupport.getUnmarshallerFactory();
} catch (Exception e){
logger.error("Error: ",e);
}
}
public Assertion getSamlAssertion(String samlResponse)
throws IOException, XMLParserException, UnmarshallingException, SAXException {
Document document = docBuilder.parse(new StringInputStream(samlResponse));
Element element = document.getDocumentElement();
Unmarshaller unmarshaller = unmarshallerFactory.getUnmarshaller(element);
XMLObject responseXmlObj = unmarshaller.unmarshall(element);
Response response = (Response) responseXmlObj;
return response.getAssertions().get(0);
}
Mon Pommerening
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-core</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-saml-api</artifactId>
<version>3.2.0</version>
</dependency>
Le problème est que je reçois null
pour unmarshaller
. J'ai vérifié que le samlResponse
est valide
à la downvoter- soin d'expliquer ce que je pourrais avoir mieux fait d'expliquer la question? – gauravphoenix
Je suis d'accord, je n'arrive même pas à trouver un guide de "démarrage" sur cette bibliothèque. – Alic