jboss EAP 6.3.3回退身份验证
我有一个需要部署的应用程序,它需要SSO来关闭AD。这将使用以下代码段: jboss-web.xmljboss EAP 6.3.3回退身份验证,jboss,spnego,Jboss,Spnego,我有一个需要部署的应用程序,它需要SSO来关闭AD。这将使用以下代码段: jboss-web.xml <security-domain>java:/jaas/SPNEGO</security-domain> <valve> <class-name>org.jboss.security.negotiation.NegotiationAuthenticator</class-name> </valve> 我可以自己成功地使
<security-domain>java:/jaas/SPNEGO</security-domain>
<valve>
<class-name>org.jboss.security.negotiation.NegotiationAuthenticator</class-name>
</valve>
我可以自己成功地使用databaseserverlogin模块,但必须去掉jboss-web.xml中的valve条目
可以这样设置吗?我试图避免修改从开发部收到的WAR文件
我尝试了以下内容,但仍然停留在类not found org.jboss.security.negotiation.NegotiationWithBasicFallbackAuthenticator上?我以为最新的jboss EAP 6.3.3中会包含该补丁?可能是个错误的假设
提前感谢您的指导(如果我不理解,请耐心等待)。在RedHat支持部门的帮助下进行排序 •要启用回退到basic,请将以下内容添加到WEB-INF/WEB.xml文件的顶部:
<context-param>
<description>BASIC Authentication FallBack</description>
<param-name>org.jboss.security.negotiation.NegotiationAuthenticator.BasicAuthFallBack</param-name>
<param-value>true</param-value>
</context-param>
基本身份验证回退
org.jboss.security.negotiation.NegotiationAuthenticator.BasicAuthFallBack
真的
如果您有RedHat支持,请在此处链接到新创建的知识库解决方案
<subsystem xmlns="urn:jboss:domain:security:1.2">
<security-domains>
<security-domain name="other" cache-type="default">
<authentication>
<login-module code="Remoting" flag="optional">
<module-option name="password-stacking" value="useFirstPass"/>
</login-module>
<login-module code="RealmDirect" flag="required">
<module-option name="password-stacking" value="useFirstPass"/>
</login-module>
</authentication>
</security-domain>
<security-domain name="jboss-web-policy" cache-type="default">
<authorization>
<policy-module code="Delegating" flag="required"/>
</authorization>
</security-domain>
<security-domain name="host" cache-type="default">
<authentication>
<login-module code="Kerberos" flag="optional">
<module-option name="storeKey" value="true"/>
<module-option name="useKeyTab" value="true"/>
<module-option name="principal" value="HTTP/spn.xx.xx@xx.xx"/>
<module-option name="keyTab" value="/xx/xx/xx.keytab"/>
<module-option name="doNotPrompt" value="true"/>
<module-option name="debug" value="true"/>
</login-module>
</authentication>
</security-domain>
<security-domain name="SPNEGO" cache-type="default">
<authentication>
<login-module code="SPNEGO" flag="requisite">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="serverSecurityDomain" value="host"/>
<module-option name="removeRealmFromPrincipal" value="true"/>
</login-module>
<login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="sufficient">
<module-option name="password-stacking" value="useFirstPass"/>
<module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
<module-option name="java.naming.provider.url" value="ldap://xx.xx.xx:389"/>
<module-option name="bindDN" value="cn=xx,ou=xx,ou=xx,dc=xx,dc=xx"/>
<module-option name="bindCredential" value="xxencryptmexx"/>
<module-option name="baseCtxDN" value="ou=xx,ou=xx,dc=xx,dc=xx"/>
<module-option name="baseFilter" value="(&(samaccountname={0})(objectclass=user))"/>
<module-option name="searchScope" value="ONELEVEL_SCOPE"/>
<module-option name="allowEmptyPasswords" value="false"/>
<module-option name="throwValidateError" value="true"/>
<module-option name="rolesCtxDN" value="ou=xx,ou=xx,dc=xx,dc=xx"/>
<module-option name="roleFilter" value="(member={1})"/>
<module-option name="roleAttributeID" value="cn"/>
<module-option name="roleAttributeIsDN" value="false"/>
<module-option name="roleRecursion" value="2"/>
<module-option name="java.naming.referral" value="follow"/>
</login-module>
</authentication>
</security-domain>
</security-domains>
</subsystem>
<login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
<module-option name="dsJndiName" value="java:/MyDatabaseDS"/>
<module-option name="principalsQuery" value="select passwd from Users where username=?"/>
<module-option name="rolesQuery" value="select userRoles, 'Roles' from UserRoles where username=?"/>
<module-option name="ignorePasswordCase" value="true"/>
</login-module>
HTTP request sent, awaiting response... 401 Unauthorized
Unknown authentication scheme.
Authorization failed.
<context-param>
<description>BASIC Authentication FallBack</description>
<param-name>org.jboss.security.negotiation.NegotiationAuthenticator.BasicAuthFallBack</param-name>
<param-value>true</param-value>
</context-param>