worklight http 适配器和 NTLM 身份验证
Posted
技术标签:
【中文标题】worklight http 适配器和 NTLM 身份验证【英文标题】:worklight http adapter and NTLM authentication 【发布时间】:2013-04-02 13:08:56 【问题描述】:我正在尝试在 Worklight HTTP 适配器中实现 NTLM 身份验证,以便连接到 M$ 后端服务器,例如 Sharepoint Web 服务。
我已经用
adapter.xml 结构第一个版本是:
<authentication>
<ntlm />
<serverIdentity>
<username>user</username>
<password>password</password>
</serverIdentity>
</authentication>
我的测试是在本地使用 Worklight Studio 完成的,我遇到了以下问题:
1) 调用 WL 过程时出错:
Procedure invocation failed:Could not resolve placeholder 'local.hostname'
我必须把这个“local.hostname”设置放在哪里?
2) 我尝试指定文档(IBM 信息中心)中给出的 ntlm 标记的主机名属性,WL Studio 说 xml 格式错误。
<authentication>
<ntlm hostname="myComputer.intranet.com"/>
<serverIdentity>
<username>user</username>
<password>password</password>
</serverIdentity>
</authentication>
其中“myComputer.intranet.com”是我在公司网络中的计算机名称。
Attribute 'hostname' is not allowed to appear in element 'ntlm'
【问题讨论】:
【参考方案1】:来自 IBM 服务请求的响应: 用于向启用 NTLM 的后端系统进行身份验证的用户名必须用 windows 域名填充,后跟一个 \ 和用户名。
<serverIdentity>
<username>domain\user</username>
<password>password</password>
</serverIdentity>
这适用于硬编码的 serverIdentity 功能。
由于我公司的安全治理,不能有“通用”服务器身份。所以我必须将最终用户的凭据转发到后端系统进行身份验证。
如何使用 Worklight 身份验证机制(例如基于适配器)执行此操作,我在哪里可以为我的用户名设置域? 我可以根据适配器混合几种安全领域吗?
【讨论】:
以上是关于worklight http 适配器和 NTLM 身份验证的主要内容,如果未能解决你的问题,请参考以下文章
无法通过 Android 设备中的 Worklight http 适配器连接到后端
在 IBM Worklight 中运行 HTTP 适配器时出错