问题描述
我目前使用的是 Orbeon 2019.2 CE
版本
我正在尝试为访问控制配置标头驱动的方法,而不使用 Liferay 或 Orbeon 中的默认 Login/logout
表单。
我已经在properties-dev.xml中设置了这些属性
我有 2 个角色(form-builder
、form-viewer
)通过 My-Roles-Header
发送。
<property as="xs:string" name="oxf.fr.authentication.method" value="header"/>
<property as="xs:boolean" name="oxf.fr.authentication.header.sticky" value="true"/>
<property as="xs:string" name="oxf.fr.authentication.header.username" value="My-Username-Header"/>
<property as="xs:string" name="oxf.fr.authentication.header.group" value="My-Group-Header"/>
<property as="xs:string" name="oxf.fr.authentication.header.roles.split" value="(\s*[,\|]\s*)+"/>
<property as="xs:string" name="oxf.fr.authentication.header.roles" value="My-Roles-Header"/>
<property as="xs:string" name="oxf.xforms.forward-submission-headers" value="My-Username-Header My-Group-Header My-Roles-Header"/>
<property as="xs:string" name="oxf.http.forward-headers" value="My-Username-Header My-Group-Header My-Roles-Header"/>
但是,我仍然可以在不发送 My-Username-Header My-Group-Header My-Roles-Header
标头的情况下访问表单生成器和表单运行器。它应该将我重定向到 403
页面
解决方法
- Form Runner:默认设置是每个单独的表单都必须启用权限,否则该表单将是公开的。确保在表单生成器 (doc) 中选择了“为此表单启用权限”。
- 表单生成器:参见Form Builder permissions。