2014-11-14 3 views
2

Я хотел бы зайти на мой портал Arcgis с Open AM. У меня есть следовать документации ARCGIS: http://doc.arcgis.com/en/arcgis-online/reference/configure-openam.htm когда SSORedirect я имею ошибку феллинг:OpenAM и ArcGIS

libSAML2:11/14/2014 05:14:52:570 PM CET: Thread[http-8080-1,5,main] 
    ********************************************** 
    libSAML2:11/14/2014 05:14:52:569 PM CET: Thread[http-8080-1,5,main] 
    ERROR: IDPSSOFederate.doSSOFederate: Unable to do sso or federation. 
    com.sun.identity.saml2.common.SAML2Exception: Impossible de générer une valeur NameID. 
     at com.sun.identity.saml2.plugins.DefaultIDPAccountMapper.getNameID(DefaultIDPAccountMapper.java:143) 
     at com.sun.identity.saml2.profile.IDPSSOUtil.getSubject(IDPSSOUtil.java:1512) 
     at com.sun.identity.saml2.profile.IDPSSOUtil.getAssertion(IDPSSOUtil.java:912) 
     at com.sun.identity.saml2.profile.IDPSSOUtil.getResponse(IDPSSOUtil.java:730) 
     at com.sun.identity.saml2.profile.IDPSSOUtil.sendResponseToACS(IDPSSOUtil.java:422) 
     at com.sun.identity.saml2.profile.IDPSSOFederate.doSSOFederate(IDPSSOFederate.java:1071) 
     at com.sun.identity.saml2.profile.IDPSSOFederate.doSSOFederate(IDPSSOFederate.java:129) 
     at org.apache.jsp.saml2.jsp.idpSSOFederate_jsp._jspService(idpSSOFederate_jsp.java:114) 
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) 
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 
     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
     at com.sun.identity.authentication.UI.LoginViewBean.forwardTo(LoginViewBean.java:640) 
     at com.iplanet.jato.ApplicationServletBase.dispatchRequest(ApplicationServletBase.java:981) 
     at com.iplanet.jato.ApplicationServletBase.processRequest(ApplicationServletBase.java:615) 
     at com.iplanet.jato.ApplicationServletBase.doPost(ApplicationServletBase.java:473) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:643) 
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at org.forgerock.openam.validation.ResponseValidationFilter.doFilter(ResponseValidationFilter.java:44) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at org.forgerock.openam.xui.XUIFilter.doFilter(XUIFilter.java:113) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at com.sun.identity.setup.AMSetupFilter.doFilter(AMSetupFilter.java:98) 
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
     at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879) 
     at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617) 
     at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1774) 
     at java.lang.Thread.run(Unknown Source) 

Я думаю, что я пропустил что-то с NameID. любая идея, как его настроить? THX для любой помощи!

+0

Журнал отладки OpenAM не сообщает, какой идентификатор имени используется в запросе аутентификации из ArcGIS Portal SAML SP в OpenAM SAML IdP (это настроено в метаданных SAML). Вы можете, тем не менее, включить регистрацию уровня сообщения на стороне OpenAM, чтобы узнать, какая информация получена OpenAM. Это может быть связано с конфигурацией хранилища данных OpenAM и т. Д. –

ответ

1

Наиболее вероятной причиной ошибки «Невозможно сгенерировать значение NameID» является то, что вы пытаетесь создать утверждение с непостоянным идентификатором именного формата &. В этих случаях OpenAM не знает, какое значение следует использовать для элемента NameID, поэтому вам нужно настроить карту значений NameID на страницах конфигурации размещенного IdP.

С помощью сопоставления значений NameID вы можете присвоить заданное значение атрибута из записи пользователя в элемент < NameID> в фактический формат NameID.

Для примера со следующим отображением:

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified=uid

Всякий раз, когда есть входящий AuthnRequest, который запрашивает неопределенный NameID-формат, возвращаемый утверждение будет содержать значение NameID похожее на это:

<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">demo</saml:NameID>

Где «demo» - это значение атрибута пользователя, зарегистрированного пользователем.