Как настроить Spring Security для аутентификации в базе данных с использованием базовой аутентификации?

Я занимаюсь программированием на Java 13 недель и работаю над веб-службой RESTful. Бэкенд готов, и теперь я работаю над созданием пользовательского интерфейса. Одним из требований является то, что пользователь должен войти в систему, используя http basic. Я настроил это таким образом, что когда пользователь переходит на страницу, появляется всплывающее диалоговое окно, и вы можете ввести одного жестко закодированного пользователя, который у меня есть, и он войдет в систему. Но что мне действительно нужно, это проверить против пользователей в база данных. Я много искал, чтобы попытаться найти способ настроить его для проверки по базе данных, но безрезультатно. Вот мой файл spring-security.xml с моим фиктивным пользователем.

<beans:beans xmlns="http://www.springframework.org/schema/security"
    xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/security
    http://www.springframework.org/schema/security/spring-security-3.1.xsd">

    <!-- <http auto-config="true"> <intercept-url pattern="/welcome*" access="ROLE_USER" 
        /> <form-login login-page="/login" default-target-url="/welcome" authentication-failure-url="/loginfailed" 
        /> <logout logout-success-url="/logout" /> </http> -->

    <http>
        <intercept-url pattern="/*" access="ROLE_USER" />
        <http-basic />
    </http>

    <authentication-manager>
        <authentication-provider>
            <user-service>
                <user name="tmain" password="123456" authorities="ROLE_USER" />
            </user-service>
        </authentication-provider>
    </authentication-manager>

</beans:beans>

А вот (я полагаю) единственная информация, относящаяся к настройке в моем файле web.xml.

<filter>
        <filter-name>springSecurityFilterChain</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>springSecurityFilterChain</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

Может ли кто-нибудь дать мне какие-либо указания по настройке безопасности Spring для аутентификации в базе данных, а не в фиктивном пользователе, который у меня есть? У меня есть объект User в базе данных с именем, фамилией, адресом электронной почты, паролем, activeStatus и часовым поясом. Электронная почта — это имя пользователя. Любая помощь будет оценена по достоинству.

9
задан ROMANIA_engineer 2 December 2017 в 07:41
поделиться