gpt4 book ai didi

Spring Group权限,如何使用默认查询激活

转载 作者:行者123 更新时间:2023-12-02 10:27:06 25 4
gpt4 key购买 nike

我一直在尝试使用 Spring security 来学习不同的东西。我建立了一个具有基本结构的授权,其中有“用户”表和“权限”表。所以我的身份验证提供程序如下所示。

    <authentication-provider>
<password-encoder hash='md5'>
<salt-source user-property="username"/>
</password-encoder>
<jdbc-user-service data-source-ref="dataSource"/>
</authentication-provider>

通过这种方式,我不指定查询来获取用户详细信息,因为我使用默认 database schema 。因此,虽然我没有使用“authorities-by-username-query”属性,但Spring正在使用默认查询(“选择用户名,来自用户名=?的机构的权限”和“选择用户名,密码,从用户名=?的用户启用” ”)所以一切进展顺利。

现在我想尝试与权威团体合作。所以我根据架构创建表。我的问题如何激活群组权限? API documentation for JdbcDaoImpl说使用“enableGroups”属性来启用“基于组的权限”。但“基于团体的权威”不具备这样的属性。由于 Spring 有 default query我认为没有必要明确给出。

有人可以帮助我使用默认查询启用基于组的权限。

最佳答案

不幸的是jdbc-user-service不提供对enableGroups属性的访问。所以你必须使用 spring 的 bean 命名空间手动配置这个 bean。我认为你可以尝试这样的事情:

<authentication-provider user-service-ref="jdbcDaoImpl">
<password-encoder hash='md5'>
<salt-source user-property="username"/>
</password-encoder>
</authentication-provider>


<beans:bean id="jdbcDaoImpl" class="org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl">
<property name="enableGroups" value="true" />
<property name="enableAuthorities" value="false" />
<property name="dataSource" ref="dataSource" />
</beans:bean>

关于Spring Group权限,如何使用默认查询激活,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15478227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com