调用程序发出 Set_Conversation_Security_User_ID 调用(函数名称 cmscsu),以指定获取对已调用程序的访问权限所需的用户标识符。
语法
CM_ENTRY Set_Conversation_Security_User_ID(
unsigned char FAR *conversation_ID,
unsigned char FAR *security_user_ID,
CM_INT32 FAR *security_user_ID_length,
CM_INT32 FAR *return_code
);
参数
conversation_ID
提供的参数。 指定会话的标识符。 此参数的值由 Initialize_Conversation返回。
security_user_ID
提供的参数。 指定获取合作伙伴计划访问权限所需的用户标识符。 此参数是最多八个 ASCII 字符的字符串,区分大小写。
允许的字符为:
大写字母和小写字母。
数字从 0 到 9。
特殊字符(空格除外)。
如果要使用 CPI-C 自动登录功能,则必须将此参数设置为 MS$SAME 字符串。 有关详细信息,请参阅本主题后面的“备注”部分。
security_user_ID_length
提供的参数。 指定 security_user_ID的长度。 范围从 0 到 8。如果要使用 CPI-C 自动登录功能,则必须将此参数设置为 7。 有关详细信息,请参阅本主题后面的“备注”部分。
return_code
从此调用返回的代码。 本主题后面列出了有效的返回代码。
返回代码
CM_OK
主要返回代码;调用已成功执行。
CM_PROGRAM_PARAMETER_CHECK
主要返回代码;发生以下事件之一:
由conversation_ID指定的值无效。
由security_user_ID_length指定的值范围不足。
CM_PROGRAM_STATE_CHECK
主要返回代码;发生以下事件之一:会话未处于 INITIALIZE 状态。
会话安全类型未设置为CM_SECURITY_PROGRAM。
CM_PRODUCT_SPECIFIC_ERROR
主要返回代码;发生了特定于产品的错误,并且已记录在产品错误日志中。
状态更改
会话必须处于 INITIALIZE 状态。
没有状态更改。
注解
仅当会话安全类型CM_SECURITY_PROGRAM或CM_SECURITY_SAME时,此调用才会对会话产生影响。 它从 Initialize_Conversation指定的侧信息中替代初始用户标识符。 发出 “分配 ”后,无法发出此调用。
在 分配生成的分配请求发送到合作伙伴逻辑单元(LU)之前,不会检测到无效的用户标识符。 在后续调用中,错误将返回到调用程序。
Host Integration Server 支持 CPI-C 应用程序的自动登录。 此功能需要网络管理员的特定配置。 必须从 SNA 服务器的客户端在 LAN 端调用 CPI-C 应用程序。 客户端必须登录到 Microsoft Windows Server 域,但可以是支持 SNA Server CPI-C API 的任何平台。
客户端应用程序编码为使用程序级别安全性,具有特殊的硬编码 CPI-C 用户名 MS$SAME 和密码 MS$SAME。 当此会话分配从客户端流向 SNA 服务器时,SNA 服务器将查找与登录客户端所依据的 Windows Server 帐户对应的主机帐户和密码,并将主机帐户信息替换为它发送到主机的 APPC 附加消息。