<div dir="ltr"><div><div><div><div>Hi all,<br><br></div>I am trying to configure Shibboleth as an IdP for MS Office 365. I am following instructions from the link <a href="http://technet.microsoft.com/en-us/library/jj205463.aspx#BKMK_1">http://technet.microsoft.com/en-us/library/jj205463.aspx#BKMK_1</a><br>
<br></div>It says that to convert the AD records to binary when they are fetched by Shibboleth, we have to add an LDAPPROPERTY. For example:<br><br><span style="color:rgb(11,83,148)"><!-- Example LDAP Connector --><br>
<br> <resolver:DataConnector id="myLDAP" xsi:type="dc:LDAPDirectory"<br> ldapURL="ldap://<a href="http://ldap.myorg.com">ldap.myorg.com</a>"<br> baseDN="ou=Users,dc=myorg,dc=com"<br>
principal="CN=ServiceUser,OU=Users,DC=myorg,DC=com"<br> principalCredential="t3st3tye"><br> <dc:FilterTemplate><br> <![CDATA[<br> (uid=$requestContext.principalName)<br>
]]><br> </dc:FilterTemplate><br><br><span style="color:rgb(0,0,255)"><LDAPProperty name="java.naming.ldap.attributes.binary" value="objectGUID"/></span><br><br> </resolver:DataConnector><br>
</span><br><br></div>I have made all the required changes and have skipped this LDAPPROPERTY because it gives me error which I will address shortly. Everything is working alright however I am still waiting for microsoft to update our federation settings so that I can try to login with Shibboleth IdP. The problem is that on the website it is mentioned that we must use <br>
<LDAPProperty name="java.naming.ldap.attributes.binary" value="objectGUID"/><br><br></div><div>or else authentication will fail because the format of objectGUID will not be in binary.<br><br></div>
<div>When I add the above configuration in attribute-resolver.xml and restart tomcat services I get following errors. However when I remove <br><LDAPProperty name="java.naming.ldap.attributes.binary" value="objectGUID"/><br>
</div><div>there are no errors and everything start to work. I wonder if the syntax of<br><LDAPProperty name="java.naming.ldap.attributes.binary" value="objectGUID"/><br></div><div>is correct or may be it is based on old shibboleth versions. We are running Shibboleth IdP 2.4.0.<br>
<br></div><div>Any ideas?<br><br></div><div>Following are the errors:<br><br><br><br><span style="color:rgb(0,0,255)">15-Aug-2014 09:23:52.298 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext<br>
15-Aug-2014 09:23:57.911 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener<br>
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shibboleth.AttributeResolver': Invocation of init method failed; nested exception is edu.internet2.middleware.shibboleth.common.service.ServiceException: Configuration was not loaded for shibboleth.AttributeResolver service, error creating components.<br>
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)<br>
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)<br> at java.security.AccessController.doPrivileged(Native Method)<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)<br>
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)<br> at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)<br>
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)<br> at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)<br>
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)<br> at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)<br>
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)<br> at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)<br>
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)<br> at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)<br>
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)<br> at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4760)<br> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5184)<br>
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)<br> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:724)<br> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:700)<br>
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:714)<br> at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:581)<br> at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1686)<br>
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)<br> at java.util.concurrent.FutureTask.run(FutureTask.java:266)<br> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)<br>
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)<br> at java.lang.Thread.run(Thread.java:745)<br>Caused by: edu.internet2.middleware.shibboleth.common.service.ServiceException: Configuration was not loaded for shibboleth.AttributeResolver service, error creating components.<br>
at edu.internet2.middleware.shibboleth.common.config.BaseService.loadContext(BaseService.java:192)<br> at edu.internet2.middleware.shibboleth.common.config.BaseReloadableService.initialize(BaseReloadableService.java:148)<br>
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<br> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br>
at java.lang.reflect.Method.invoke(Method.java:483)<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1414)<br>
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1375)<br> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)<br>
... 28 more<br>Caused by: org.xml.sax.SAXParseException; lineNumber: 345; columnNumber: 78; cvc-complex-type.2.4.a: Invalid content was found starting with element 'LDAPProperty'. One of '{"urn:mace:shibboleth:2.0:resolver:dc":ReturnAttributes, "urn:mace:shibboleth:2.0:resolver:dc":LDAPProperty, "urn:mace:shibboleth:2.0:resolver:dc":StartTLSTrustCredential, "urn:mace:shibboleth:2.0:resolver:dc":StartTLSAuthenticationCredential, "urn:mace:shibboleth:2.0:resolver:dc":ConnectionPool, "urn:mace:shibboleth:2.0:resolver:dc":ResultCache}' is expected.<br>
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)<br> at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)<br> at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)<br>
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)<br> at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)<br> at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source)<br>
at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source)<br> at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source)<br> at org.apache.xerces.impl.xs.XMLSchemaValidator.emptyElement(Unknown Source)<br>
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)<br> at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)<br> at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)<br>
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)<br> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)<br> at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)<br>
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)<br> at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)<br> at edu.internet2.middleware.shibboleth.common.config.SpringDocumentLoader.loadDocument(SpringDocumentLoader.java:56)<br>
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)<br> at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)<br>
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)<br> at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)<br>
at edu.internet2.middleware.shibboleth.common.config.SpringConfigurationUtils.populateRegistry(SpringConfigurationUtils.java:89)<br> at edu.internet2.middleware.shibboleth.common.config.BaseService.loadContext(BaseService.java:170)<br>
... 36 more<br><br></span><br></div><div><div><div><br><br clear="all"><div><div><br>-- <br><font face="tahoma, sans-serif"><b>Farzan Qureshi</b> | Network Administrator & Help-desk Support | Rosmini College | (09) 487 0 530</font>
</div></div></div></div></div></div>
<br>
<font style="font-family:Verdana" size="1">This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager (<span style="font-weight:bold;font-style:italic"><a href="mailto:admin@rosmini.school.nz" target="_blank">admin@rosmini.school.nz</a></span>). Please note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of the company. Finally, the recipient should check this email and any attachments for the presence of viruses. <span style="font-weight:bold">Rosmini College</span> accepts no liability for any damage caused by any virus transmitted by this email.</font>