0

スプリングセキュリティについて質問します!!

自分のテーブルで authentication-provide を設定することは可能ですか?これは私の例です

物語「功利主義者」

CREATE TABLE utilisateur
(
  id_user serial NOT NULL,
  authority character varying(50) NOT NULL,
  username character varying(50) NOT NULL,
  "password" character varying(50) NOT NULL,
  CONSTRAINT cl_primaire_utilisateur PRIMARY KEY (id_user)
)

スプリングを自分のテーブルに接続するにはどうすればよいですか

<authentication-manager>
        <authentication-provider user-service-ref='userDetailsService' />
    </authentication-manager>
4

1 に答える 1

1

これを実現するには、 JDBC ベースのユーザー詳細サービスを使用できます。ユーザーと権限について任意のテーブルを照会するように構成できます。

これは、それを使用する私の過去のプロジェクトの 1 つからの関連するセキュリティ コンテキスト セクションの例です。

<!-- Configure Authentication mechanism -->
<authentication-manager alias="authenticationManager">
    <!-- DAO Based Security -->
    <authentication-provider>
        <password-encoder hash="md5" />
        <jdbc-user-service data-source-ref="dataSource"
            users-by-username-query="SELECT U.username AS username, U.password as password, 'true' as enabled FROM user U where U.username=?"
            authorities-by-username-query="SELECT U.username as username, A.name as authority FROM user U left join user_roles UA on U.id=UA.user left join role A on UA.roles = A.id WHERE U.username=?" />
    </authentication-provider>
</authentication-manager>
于 2013-05-29T13:30:05.457 に答える