Я пытаюсь установить базовую c аутентификацию для моей конечной точки с активным каталогом. У меня следующие конфигурации:
<spring:beans>
<spring:bean id="ldapContextSource" class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">
<spring:constructor-arg value="${LDAP_URL}"/>
<spring:property name="userDn" value="${LDAP_USER}"/>
<spring:property name="password" value="${LDAP_PASSWORD}"/>
</spring:bean>
<ss:authentication-manager alias="authenticationManager" >
<ss:ldap-authentication-provider server-ref="ldapContextSource" user-search-filter="(sAMAccountName={0})" user-search-base="CN=Users,dc=mycompany,dc=area"/>
</ss:authentication-manager>
</spring:beans>
<mule-ss:security-manager name="muleSecurityManager" doc:name="Spring Security Provider">
<mule-ss:delegate-security-provider name="spring-security-ldap" delegate-ref="authenticationManager" />
</mule-ss:security-manager>
<mule-ss:security-manager name="muleSecurityManager" doc:name="Spring Security Provider">
<mule-ss:delegate-security-provider name="spring-security-ldap" delegate-ref="authenticationManager" />
</mule-ss:security-manager>
<flow name="http-basic-authenticationFlow">
<http:listener config-ref="HTTP_Listener_Configuration"
path="/validate" doc:name="HTTP" allowedMethods="GET"/>
<http:basic-security-filter
realm="mule-realm"
securityProviders="spring-security-ldap"
/>
<logger level="INFO" doc:name="Logger"/>
<set-payload
value="{ "message": "response validated" }"
mimeType="application/json" doc:name="Set Payload" />
</flow>
при отправке запроса GET через почтальона с правильными учетными данными я получаю следующую ошибку:
Message : Authentication Attempt Failed.
Payload : {NullPayload}
Payload Type : org.mule.transport.NullPayload
Element : /http-basic-authenticationFlow/processors/1 @ my-apis:null:null
--------------------------------------------------------------------------------
Root Exception stack trace:
org.springframework.security.authentication.BadCredentialsException: Bad credentials