sp_ldapadmin '<command>'[, <option1>[, <option2>]]
以下的“参数”部分列出了有效的 <command>[, <option1>[, <option2>]] 选项。
'set_primary_url', '<ldapurl>'
创建指定的搜索字符串 <ldapurl>。只能创建一个主搜索字符串。
<ldapurl> 的语法为:
ldapurl::=ldap://<host>:<port>/<node>?<attributes>?base | one | sub?<filter>
其中:
<host> – 是 LDAP 服务器的主机名。
<port> – 是 LDAP 服务器的端口号。
<node> – 指定对象层次中搜索开始处的节点。
<attributes> – 是要返回到结果集中的属性列表。每个 LDAP 服务器都可能支持不同的属性列表。
<filter> – 指定要验证的一个或多个属性。可以使用简单过滤器,如“uid=*,”,也可以使用复合过滤器,如“(uid=*)(ou=<group>)”。语法与 LDAP 服务器相关并使用通配符(*)描述登录名。
'set_secondary_url', {'<ldapurl>' | null}
创建指定的辅助搜索字符串
'set_dn_lookup_url', '<distinguished_name_url>'
将 set_dn_lookup_url 设置为非 NULL 值时,将使用搜索的区分名算法来向 LDAP 目录服务器鉴定登录名。
<distinguished_name_url> 的最大长度为 255 个字符,用于搜索与登录名相关联的区分名。
'set_secondary_dn_lookup_url', '<distinguished_name_url>'
将 set_secondary_dn_lookup_url 设置为非 NULL 值时,将创建指定的辅助区分名算法来向 LDAP 目录服务器鉴定登录名。
<distinguished_name_url> 的最大长度为 255 个字符,用于搜索与登录名相关联的区分名。
'set_access_acct', '<account_distinguished_name>', '<account_password>'
指定 SAP ASE 服务器执行搜索和其它只读管理操作所用的标识和口令。标识采用区分名格式。对于 LDAP 服务器,使用 <account_distinguished_name> 来鉴定此用户。<account_distinguished_name> 和 <account_password> 都分别限制为 255 个字符。
'set_secondary_access_acct', '<account_distinguished_name>', '<account_password>'
创建 SAP ASE 服务器执行搜索和其它只读管理操作所用的辅助标识和口令。标识采用区分名格式。对于 LDAP 服务器,使用 <account_distinguished_name> 来鉴定此用户。<account_distinguished_name> 和 <account_password> 都分别限制为 255 个字符。
'set_failback_interval', '<time_in_minutes>'
设置 SAP ASE 管家实用程序检查失败的 LDAP 服务器的间隔。
'suspend', {'primary' | 'secondary'}
挂起主 URL 鉴定或辅助 URL 鉴定。
'activate', {'primary' | 'secondary'}
启用主 URL 鉴定或辅助 URL 鉴定的设置。
'list'
显示 LDAP 搜索字符串。
'list_urls'
显示 LDAP URL 搜索字符串。
'list_urls'
显示 LDAP URL 搜索字符串。
'list_access_acct'
显示 LDAP 访问帐户区分名设置。
'check_url', '<ldapurl>'
检验 LDAP URL 搜索字符串。还可以检验某个用户帐户是否存在,但是它不鉴定用户。
reinit_descriptors
取消绑定所有已建立的 LDAP 服务器描述符,并重新初始化 LDAP 用户鉴定子系统。语法为:
sp_ldapadmin 'reinit_descriptors'
每当修改认证机构信任的根文件时,系统安全员必须使用 reinit_descriptors 重新初始化 LDAP 用户鉴定。
'check_login', '<login_name>'
检验现有的 LDAP URL 搜索字符串的某个用户帐户。它不鉴定用户。
'set_timeout' <timeout_in_milli_seconds>
以毫秒为单位设置 SAP ASE 服务器等待来自 LDAP 服务器的响应直到抛弃鉴定请求前的等待时间。
set_timeout 的缺省值为 10,000 毫秒(10 秒)。有效值介于 1 与 3,600,000(1 小时)之间。
'set_log_interval', <log_interval>
设置记录间隔,以分钟指定,范围为 0 到 480 分钟。缺省值为 3 分钟。0 指示输出所有消息。
'set_num_retries', <num_retries>
设置出现瞬时错误后的重试次数。set_num_retries 的有效范围是 1 – 60,缺省值为 3。
'set_max_ldapua_naptive_threads', <max_ldapua_native_threads>
设置用于处理 LDAP 鉴定请求的引擎中能够并发运行的最大本机线程数。
set_max_ldapua_native_threads 的最小值为 1。最大值为 max native threads 减去使用 sp_configure 指定的 number of dump threads。缺省值与最大值相同。
sp_configure 确保 max native threads 满足 set_max_ldapua_native_threads 以及配置参数 number of dump threads 的值。
'set_max_ldapua_desc', <max_ldapua_desc>
设置每个引擎的最大 LDAP 描述符数。set_max_ldapua_desc 的有效范围是 1 – 20,缺省值为 20。
'set_abandon_ldapua_when_full', {true | false}
允许您在超过每个引擎容量的本机线程数时寻求 LDAP 用户鉴定的替代方法。
当没有更多的可用线程时,如果 set_abandon_ldapua_when_full 设置为 true,则会抛弃请求。如果 enable ldap user auth 设置为 1,则使用 SAP ASE syslogins 对客户端进行鉴定。如果 enable ldap user auth 设置为 2,则客户端登录失败。
如果 set_abandon_ldapua_when_full 设置为 false,则会阻止鉴定请求,直到 LDAP 描述符可以接受新的鉴定请求。
'help'
显示 sp_ldapadmin 的使用信息。
为 LDAP SunONE Directory Server 创建一个 LDAP URL 搜索字符串:
sp_ldapadmin set_primary_url,'ldap://voyager:389/
ou=People,dc=MyCompany,dc=com??sub?uid=*'
搜索字符串标识出正在监听主机名“voyager”,端口号 389(缺省的 LDAP 协议端口)的目录服务器,开始搜索的基准节点位于组织单位(ou)“People”中,域为“MyCompany.com”。它返回与过滤器 uid=* 匹配的所有属性。SAP ASE 服务器用要进行鉴定的 SAP ASE 登录名替换通配符。
使用上一示例中描述的条件创建一个在 OpenLDAP 2.0.25 中定义的 LDAP URL 搜索字符串。
sp_ldapadmin set_primary_url,'ldap://voyager:389/
dc=MyCompany,dc=com??sub?cn=*'
将辅助 LDAP URL 搜索字符串设置为 null,表示没有故障切换和辅助 LDAP 服务器:
sp_ldapadmin set_secondary_url, null
用组合过滤器创建 LDAP URL 搜索字符串:
sp_ldapadmin set_primary_url, 'ldap://voyager:389/
ou=people,dc=siroe,dc=com??sub?(&(uid=*) (ou=accounting))
使用在 Windows 2000 控制器中找到的缺省 Microsoft Active Directory 方案:
1> sp_ldapadmin set_access_acct, 'cn=aseadmin, cn=Users, dc=mycompany,
dc=com', 'aseadmin secret password'
2> go
1> sp_ldapadmin set_dn_lookup_url,
'ldap://mydomainhostname:389/cn=Users,dc=mycompany,dc=com?
distinguishedName?sub?samaccountname=*'
2> go
1> sp_ldapadmin set_primary_url,'ldap://mydomainhostname:389/'
2> go
已将“aseadmin”用户名添加到 Active Directory 服务器,并且已经授予对找到用户的树和对象的读取权限。获得由 distinguishedName 指定的 LDAP 属性,并用于鉴定用户。过滤器指定对属性 samaccountname=* 的搜索;用 SAP ASE 日志记录中的名字替换 * 通配符。
例如,“samaccountname=jqpublic”向 SAP ASE 服务器返回值为“cn=John Q. Public, cn=Users,dc=mycompany, dc=com”的 DN 属性“distinguishedName”。SAP ASE 服务器使用此字符串绑定到 ldap://mydomainhostname:389。如果绑定成功,则鉴定成功。
将最大本地线程数设置为 12:
sp_ldapadmin 'set_max_ldapua_native_threads', '12'
将 SAP ASE 服务器等待来自 LDAP 服务器的响应直到抛弃鉴定请求前的等待时间设置为 25,000 毫秒:
sp_ldapadmin, 'set_timeout', '25000'
禁用鉴定请求,直到 LDAP 描述符可以接受新的鉴定请求:
sp_ldapadmin 'set_abandon_ldapua_when_full', 'false'
显示当前的 LDAP 值:
sp_ldapadminPrimary:
URL: 'ldap://linuxpuneeng1:50917/'
DN Lookup URL:
'ldap://linuxpuneeng1:50917/dc=sybase,dc=com??sub?uid=*'
Access Account: 'cn=Directory Manager'
Active: 'TRUE'
Status: 'READY'
Secondary:
URL: ''
DN Lookup URL: ''
Access Account: ''
Active: 'FALSE'
Status: 'NOT SET'
Timeout value: '5000' milliseconds
Log interval: '1' minutes
Number of retries: '3'
Maximum LDAPUA native threads per Engine: '400'
Maximum LDAPUA descriptors per Engine: '3'
Abandon LDAP user authentication when full: 'false'(return status = 0)
使用 sp_ldapadmin 时,还存在一些其它注意事项:
“cn=*”中一样以“<attribute>=<wildcard>”形式指定唯一标识用户的属性名。
“...sub?(uid=*)(ou=group)”。否则,鉴定失败。