我正在编写一个简单的Java客户端,它转到工作区服务器以检索一些数据。工作区服务器不允许公共连接,并且身份验证机制是“SAS令牌身份验证”。
当我尝试连接到服务器时,出现无效凭据错误。当我尝试使用Java代码连接到SAS元数据服务器时,同一组凭据工作正常。我可以在SAS EG的问题中完全访问工作区。
SAS研究所(我提交了支持跟踪)说我的连接需要SAS Metaserver知道,换句话说,我应该与SAS Metadata服务器建立活动连接,然后使用相同的凭据连接到所选的工作区服务器。反过来,工作区服务器将根据Metadataserver上的活动连接列表验证凭据。我可以做第一部分没问题,我得到了与元数据服务器的连接,但当我尝试连接到工作区服务器同时保持与元数据的连接时,我的连接被拒绝说用户名/密码不正确。
我已经使用了这个示例代码,其中删除了在元数据上创建数据表/列的方法,而是在启动与元数据服务器的成功连接之后,在关闭之前,使用相同的凭据启动另一个启动工作区工厂的方法。 http://support.sas.com/documentation/cdl/en/omaref/63063/HTML/default/viewer.htm#p0zlnmq1vv8xgbn1hshp4rmw2btd.htm
我在LinkedIn上发布了这个,其中一些建议是围绕令牌身份验证,我不需要发送第二组凭据,我应该从元数据中获取令牌,使用它来连接。我找到的唯一对我发现的令牌对象的引用是:http://support.sas.com/rnd/javadoc/93/Foundation/com/sas/services/user/UserContextInterface.html#SHAREDRESOURCEKEY_ENVIRONMENT
有什么一般性建议吗?我在这里遇到了什么概念错误吗?有没有人有工作样本连接到使用SAS令牌认证的工作区服务器?
此致 瓦西里