第 2 章 Elytron 子系统
2.1. 使用基于文件系统的身份存储配置身份验证
在 JBoss EAP
中配置文件系统
域:/subsystem=elytron/filesystem-realm=exampleFsRealm:add(path=fs-realm-users,relative-to=jboss.server.config.dir)
如果您的目录位于
jboss.server.config.dir
之外,则需要相应地更改路径和
相对
值。添加用户:
使用
filesystem-realm
时,您可以使用管理 CLI 添加用户。/subsystem=elytron/filesystem-realm=exampleFsRealm:add-identity(identity=user1) /subsystem=elytron/filesystem-realm=exampleFsRealm:set-password(identity=user1, clear={password="password123"}) /subsystem=elytron/filesystem-realm=exampleFsRealm:add-identity-attribute(identity=user1, name=Roles, value=["Admin","Guest"])
添加
simple-role-decoder
:/subsystem=elytron/simple-role-decoder=from-roles-attribute:add(attribute=Roles)
此
simple-role-decoder
从Roles
属性解码主体的角色。如果您的角色在不同的属性中,您可以更改此值。配置
security-domain
:/subsystem=elytron/security-domain=exampleFsSD:add(realms=[{realm=exampleFsRealm,role-decoder=from-roles-attribute}],default-realm=exampleFsRealm,permission-mapper=default-permission-mapper)
在
undertow
子系统中配置application-security-domain
:/subsystem=undertow/application-security-domain=exampleApplicationDomain:add(security-domain=exampleFsSD)
注意可以通过导航到 Configuration
Subsystems Web(Under tow
)→ Application Security Domain,使用管理控制台配置 undertow 子系统中的application-security-domain
。配置应用程序的
web.xml
和jboss-web.xml
:您的
web.xml
和jboss-web.xml
必须更新为使用您在 JBoss EAP 中配置的application-security-domain
。例如,将 Web 应用程序配置为使用 Elytron 或传统安全性进行身份验证。
您的应用程序现在使用基于文件系统的身份存储进行身份验证。