2015-08-25 7 views
0

Я использую OpenSAML 2.6.5 в качестве библиотеки SAML2. Я не нашел документацию о том, как упорядочить строку (XML-документ), представляющую AuthnRequest, которая поступает от поставщика услуг. Может ли кто-нибудь мне помочь?Преобразование SAML2 AuthnRequest в классы Java

ответ

0

Чтобы прочитать запрос от SP, вам нужно закодировать и маршализацию поступающей строки, как это:

DefaultBootstrap.bootstrap(); //crucial in SAML2 
    byte[] decodedSamlAsBytes = Base64.decode(incomingEncodedSaml); 

    DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); 
    DocumentBuilder docBuilder = documentBuilderFactory.newDocumentBuilder(); 

    Document document = docBuilder.parse(new ByteArrayInputStream(decodedSamlAsBytes)); 
    Element element = document.getDocumentElement(); 

    UnmarshallerFactory unmarshallerFactory = Configuration.getUnmarshallerFactory(); 
    Unmarshaller unmarshaller = unmarshallerFactory.getUnmarshaller(element); 
    XMLObject requestXmlObj = unmarshaller.unmarshall(element); 
    AuthnRequest request = (AuthnRequest) requestXmlObj;