我们有一个Java应用程序(web服务器),它可以为授权用户提供一个AS400 (IBM )配置文件令牌凭证,该凭证是使用Java(它以字母数字字符串结尾)生成的。我们可以将这个配置文件令牌传递给其他java应用程序,这样他们就可以使用它建立连接,而无需在每个客户端PC上传递用户/密码或配置文件中的多个用户/密码副本。
现在,我们需要调用当前需要用户/密码的遗留VB应用程序(VB6),但我们希望能够将配置文件令牌凭证传递给它。VB程序使用OLE DB (ADODB对象)连接到AS400;例如当前代码.
oCN = New ADODB.Connection
oCN.Open "Provider=IBMDA400;Data Source=AS400SERVERNAME;Force Translate=0", USER, PASSWORD...what我们想把这个改成..。
oCN = New ADODB.Connection
oCN.Open "Provider=IBMDA400;Data Source=AS400SERVERNAME;Force Translate=0", TOKEN...or相似。
我查看了Windows中的Windows技术参考,没有看到任何关于配置文件令牌凭据的内容。MS文档也只提到用户/密码(http://msdn.microsoft.com/en-us/library/windows/desktop/ms676505(v=vs.85).aspx )。
我想知道的是,是否有人在OLE /ADO或任何其他与VisualBasic6.0兼容的数据库技术中使用了配置文件令牌凭据,如果有,您有什么文档、示例或引用可以共享吗?
顺便说一句--如果令牌技术不能与VB6一起使用,而是可以与VB.NET一起使用,那么我们也会感兴趣的是如何做到这一点。
发布于 2014-03-04 19:30:10
您可以使用公共的最小权限配置文件来执行初始连接,然后使用令牌调用QSYSETPT API以采用特定的配置文件。
cnn = New ADODB.Connection
cnn.Open "Provider=IBMDA400;Data Source=AS400SERVERNAME;Force Translate=0", USER, PASS
cmd = New ADODB.Command
cmd.ActiveConnection = cnn
cmd.CommandType = adCmdText
cmd.CommandText = "{{CALL QSYSETPT(?,?)}}"
cmd.Parameters.Append
cmd.CreateParameter(, adBinary, adParamInput, 32, token)
cmd.Parameters.Append
cmd.CreateParameter(, adInteger, adParamInputOutput, 4, 0)
cmd.Executehttps://stackoverflow.com/questions/22175732
复制相似问题