在 UNIX 上有效
CA ControlMinder 会尽可能多地将有关用户请求授权的信息传递到退出 API 函数。 根据 CA ControlMinder 了解的用户内容,可能会向退出 API 函数提供用户名、UNIX 用户 ID 号和用户 ACEE 句柄。
用户可能会在 CA ControlMinder 数据库中进行定义,也有可能不会进行定义。 如果在数据库中定义了用户,CA ControlMinder 在该用户的 Accessor Environment Entry (ACEE) 表中具有条目。 ACEE 表中的所有条目均具有一个指向该条目相关信息的 ACEE 句柄。 未在数据库中定义的用户将分配一个值为 ‑1.1 的 ACEE 句柄。值为 ‑1 的 ACEE 句柄将通知退出 API 函数请求并非来自 CA ControlMinder 定义的用户。‑
本部分提供使用 seosd 后台进程或 sepass 实用程序编译和链接退出 API 函数的说明。 这些常规说明介绍了最常见的系统配置。 每个系统都有自己特定的要求。 无法提供每个可能的系统配置的详细要求。 有关特定系统的编译器和链接器选项的详细信息,请参阅您的系统指南。
必须在退出 API 函数中包含标头文件 authxapi.h 和 seostype.h。 这些文件位于 include 子目录中。 将以下两行放在退出 API 函数源文件的顶部附近:
#include authxapi.h #include seostype.h
建议使用与 ANSI‑C 兼容的编译器。
本部分提供使用 seosd 服务或 pwdchange.dll 编译和链接退出 API 函数的说明。 这些常规说明介绍了最常见的系统配置。 每个系统都有自己特定的要求。 无法提供每个可能的系统配置的详细要求。 有关特定系统的编译器和链接器选项的详细信息,请参阅您的系统指南。
必须在退出 API 函数中包含标头文件 authxapi.h。 此文件位于 include 子目录中。 将以下行放在退出 API 函数源文件的顶部附近:
#include authxapi.h
建议使用与 ANSI-C 兼容的编译器。
由于代码的目标是共享库(对于 UNIX)或动态链接库(对于 Windows),因此您可能需要使用编译器标志来确定正确的代码生成方法。 samples 子目录中提供的示例应该有助于您查找操作系统的相应标志。
CA ControlMinder 在设计和实施方面是完全模块化的。 资源的管理也是完全模块化的。 CA ControlMinder 保护的大部分系统对象被视为常规资源。 类是共享相同属性的一系列资源。 例如,打开文件的尝试被视为对 FILE 类资源的访问请求。 在 UNIX 中,尝试替代 (su) 其他用户被视为对 SURROGATE 类资源的访问请求。 以这种方式对资源进行分组允许 CA ControlMinder 使用一种常规的授权算法。
您的退出 API 函数必须维护与 CA ControlMinder 函数相同的模块化方法。 每次尝试访问指定资源时,都会调用退出 API 函数。 您的函数必须使用模块化算法,这种算法对整个类的工作方式一致,并且不会干扰其他类或针对其他类生成错误。
重要说明! CA ControlMinder 经常收到来自系统事件和用户程序的授权请求。 可以将这些请求重定向到您的 exit 函数。 确保您的函数已经优化并且尽快终止,以便最大程度地减少系统开销。 编写 exit 函数时,必须特别谨慎。 不能编写一个 exit 函数而将调试留到运行时再进行。 一个很小的错误就可能导致系统崩溃。
注意:有关类、属性和资源的详细信息,请参阅《端点管理指南》(适用于 Windows 或 UNIX)。
版权所有 © 2013 CA。
保留所有权利。
|
|