Orbeon 标头身份验证

Posted

技术标签:

【中文标题】Orbeon 标头身份验证【英文标题】:Orbeon header authentication 【发布时间】:2021-09-26 18:35:52 【问题描述】:

我目前正在使用 Orbeon 2019.2 CE 版本 我正在尝试在不使用 Liferay 或 Orbeon 中的默认 Login/Logout 表单的情况下配置标题驱动的访问控制方法。

我已经在 properties-dev.xml 中设置了这些属性 我有 2 个角色(form-builderform-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 页面

【问题讨论】:

@avernet 你能帮我吗? 【参考方案1】: Form Runner:默认情况下,每个单独的表单都必须启用权限,否则表单将是公开的。确保在表单生成器 (doc) 中选择了“为此表单启用权限”。 表单生成器:请参阅Form Builder permissions。

【讨论】:

该文档仅适用于 Orbeon Forms PE。我提到我正在使用2019.2 CE 版本。我也试过Form Builder permission 并发送My-Roles-Header 但它没有用。 我错过了。实际上,如果您使用 Orbeon Forms CE,则不支持表单级权限。您必须使用其他方式(在容器级别或其他方式)保护这些表单。表单生成器权限应该有效,但当然只适用于表单生成器。

以上是关于Orbeon 标头身份验证的主要内容,如果未能解决你的问题,请参考以下文章

ORBEON:是不是可以添加自定义标头或向 API 授权方发送会话 cookie

为啥我的 REST 服务 .NET 客户端会在没有身份验证标头的情况下发送每个请求,然后使用身份验证标头重试?

PayPal PHP SDK:由于身份验证凭据无效或缺少授权标头,身份验证失败

有没有办法将 Authorize 属性与没有身份验证标头的请求一起使用?

将标头用于身份验证令牌的主要原因是啥?

HTML Post 表单的身份验证标头