Dynamics AX 2012 R2 外部程序运行在没有AD的环境(如PDA) 调用AX服务
Reinhard对这个问题研究了很久,也查了一些资料,整理了三种解决方案。
1、准备一台虚拟机A,A加入到了AD活动域,可以操作AX。
- PDA以远程桌面的方式,连接到虚拟机A。
- 在虚拟机上运行定制的客户端(窗体大小、按钮、图标、控件等),操作AX。
- 这样做的好处是,不用开发PDA上的客户端。
- 而是开发一个桌面应用,该桌面应用根据PDA的屏幕大小和操作方式做了定制。
2、使用可信中介和声明用户。
- 客户端机器C,可信中介机器B ,AX服务端 A。
- 在AX上发布增强入站端口A.1,可信用户选项中,选择B机器的登录账户GuyB。
- 在AX中,新建声明用户GuyC,给GuyC赋角色权限。
- B机器上登录的AD活动域账户为 GuyB, 能操作AX 。
- 在B上创建服务,服务中调用AX的服务A.1,发布服务B.1,供A调用。
- C上的客户端以声明用户身份GuyC,调用B的服务。
- 这样客户端机器C,通过可信中介B ,与AX通信,好处是将权限管理纳入到了AX中。
3、不使用可信中介和声明用户
- 与方案2类似,只是简单的使用中介B,转发服务。权限不能纳入到AX中管理。
后续:后来Reinhard发现无论外部程序所在的电脑是有没有入域中都可以,只要将调用服务的时候设置正确的NetworkCredential即可。
学习本是一个不断模仿、练习、创新的过程。对于自己,博文只是总结。在总结的过程发现问题,解决问题。对于他人,在此过程如果还能附带帮助他人,那就再好不过了。 感谢您的阅读。如果文章对您有用,那么请打赏我一杯咖啡,也可以轻轻点个推荐,以资鼓励。
微信打赏
支付宝打赏