控制用户是否能够访问当前数据库服务器上所运行的数据库的功能。只有具有相应特权的用户才能访问受保护的功能,所有用户均可访问未受保护的功能。
dbsrv16 -sf feature-list ...
feature-list :
feature-name | feature-set [ ,feature-name | feature-set ] ...
Feature set | Included features (feature sets in bold) |
---|---|
none |
All features are unsecured except manage_features, manage_keys, and disk_sandbox. |
manage_server |
|
manage_security |
|
server_security |
|
all |
|
none 指定未保护任何功能。
manage_server 禁止用户访问所有与数据库服务器相关的功能。该功能集由以下功能组成:
processor_affinity 禁止用户更改数据库服务器的处理器相似性(所使用的逻辑处理器的数量)。
manage_security 禁止用户访问用于管理数据库服务器安全的功能。缺省情况下,这些功能是受保护的。
manage_features 禁止用户修改可在数据库服务器上受保护的功能的列表。
manage_keys 禁止创建、修改、删除或列出安全功能密钥。
能访问 manage_keys 功能但不能访问 manage_features 功能的用户只能使用为其指派的安全功能来定义密钥。
manage_disk_sandbox 禁止用户使用 sa_server_option 系统过程或 sa_db_option 系统过程临时更改磁盘沙箱设置。不能为所有数据库或用户关闭 manage_disk_sandbox 安全功能—只能使用 sp_use_secure_feature_key 系统过程为各个连接关闭此安全功能。请参见-sbx 数据库服务器选项或-sbx 数据库选项。
server_security 禁止用户访问可临时跳过安全设置的功能。缺省情况下,这些功能是受保护的。
disk_sandbox 禁止用户在位于主数据库文件所在目录之外的数据库上执行读写文件操作。请参见-sbx 数据库服务器选项。
trace_system_event 禁止用户创建用户定义的跟踪事件。 请参见事件跟踪。
all 禁止用户访问以下组:
client 禁止用户访问所有允许访问客户端相关输入和输出的功能。此功能控制对客户端计算环境的访问。该功能集由以下功能组成:
read_client_file 禁止使用能够读取客户端文件的语句。例如,READ_CLIENT_FILE 函数和 LOAD TABLE 语句。请参见访问客户端计算机上的数据。
write_client_file 禁止使用能够写入客户端文件的所有语句。例如,UNLOAD 语句和 WRITE_CLIENT_FILE 函数。请参见访问客户端计算机上的数据。
remote 禁止用户访问所有允许远程访问或与远程进程通信的功能。该功能集由以下功能组成:
remote_data_access 禁止使用任何远程数据访问服务,例如代理表。
send_udp 禁止使用 sa_send_udp 系统过程向指定地址发送 UDP 包的功能。
send_email 禁止使用电子邮件系统过程,例如 xp_sendmail。
web_service_client 禁止使用 Web 服务客户端存储过程调用(发出 HTTP 请求的存储过程)。
local 禁止用户访问所有本地相关功能。此功能控制对服务器计算环境的访问。该功能集由 local_call、local_db、local_io 和 local_log 功能子集组成。
local_call 禁止用户访问所有能够执行不直接属于数据库服务器且不受该数据库服务器控制的代码的功能。该功能集由以下功能组成:
cmdshell 禁止使用 xp_cmdshell 过程。请参见xp_cmdshell 系统过程。
external_procedure 禁止使用外部存储过程。此设置不会禁用内置于数据库服务器中的 xp_* 系统过程(例如 xp_cmdshell、xp_readfile 等)。为这些系统过程提供了单独的功能控制选项。请参见SQL Anywhere 外部调用接口。
java 禁止使用 Java 相关的功能,例如,Java 过程。请参见数据库中的 Java。
local_db 禁止用户访问所有与数据库文件相关的功能。该功能集由以下功能组成:
backup 禁止使用 BACKUP 语句,从而禁止使用执行服务器端备份的功能。您仍可使用 dbbackup 实用程序执行客户端备份。请参见BACKUP 语句。
restore 禁止使用 RESTORE DATABASE 语句。请参见RESTORE DATABASE 语句。
database 禁止使用 CREATE DATABASE、ALTER DATABASE、DROP DATABASE、CREATE ENCRYPTED FILE、CREATE DECRYPTED FILE、CREATE ENCRYPTED DATABASE 和 CREATE DECRYPTED DATABASE 语句。
dbspace 禁止使用 CREATE DBSPACE、ALTER DBSPACE 和 DROP DBSPACE 语句。
local_env 禁止用户访问所有与环境变量相关的功能。该功能集由以下功能组成:
getenv 禁止用户读取任何环境变量值。请参见xp_getenv 系统过程。
local_io 禁止用户访问所有允许直接访问文件及其内容的功能。该功能集由以下功能组成:
create_trace_file 禁止使用可创建事件跟踪目标的语句。 请参见事件跟踪。
read_file 禁止使用能够读取本地文件的语句。例如,xp_read_file 系统过程、LOAD TABLE 语句以及 OPENSTRING( FILE... ) 的使用。). 不建议使用替代名 load_table 和 xp_read_file。
write_file 禁止使用能够写入本地文件的所有语句。例如,UNLOAD 语句和 xp_write_file 系统过程。不建议使用替代名 unload_table 和 xp_write_file。
delete_file 禁止使用能够删除本地文件的所有语句。例如,如果指定 -x 或 -xo 选项,则保护此功能将导致 dbbackup 实用程序运行失败。
directory 禁止使用目录类代理表。该功能在禁用 remote_data_access 时将被禁用。
sp_list_directory 禁止使用 sp_list_directory 系统过程。
sp_create_directory 禁止使用 sp_create_directory 系统过程。
sp_copy_directory 禁止使用 sp_copy_directory 系统过程。
sp_move_directory 禁止使用 sp_move_directory 系统过程。
sp_delete_directory 禁止使用 sp_delete_directory 系统过程。
sp_copy_file 禁止使用 sp_copy_file 系统过程。
sp_move_file 禁止使用 sp_move_file 系统过程。
sp_delete_file 禁止使用 sp_delete_file 系统过程。
local_log 禁止用户访问所有导致创建或直接向磁盘上某个文件写入数据的记录功能。该功能集由以下功能组成:
request_log 禁止使用更改请求日志文件名的功能,同时禁止使用增加请求日志文件大小或文件数量限制的功能。可在启动数据库服务器的命令中指定请求日志文件以及对此文件的限制;但在数据库服务器启动之后将无法进行更改。禁用请求日志功能时,仍可打开和关闭请求记录功能,并可减少请求记录文件的最大文件大小和数量。请参见请求记录。
console_log 禁止使用 sa_server_option 系统过程的 ConsoleLogFile 选项更改数据库服务器消息日志文件名的功能。保护此功能同时将禁止使用 sa_server_option 系统过程的 ConsoleLogMaxSize 选项增加日志文件最大大小的功能。可在启动数据库服务器时指定服务器日志文件及其大小。
webclient_log 禁止使用 sa_server_option 系统过程的 WebClientLogFile 选项更改 Web 服务客户端日志文件名的功能。可在启动数据库服务器时指定 Web 服务客户端日志文件。请参见-zoc 数据库服务器选项。
所有操作系统和数据库服务器。
此选项允许数据库服务器所有者控制用户是否能够访问数据库服务器上所运行数据库的功能。-sk 选项允许数据库服务器的所有者创建一个系统安全功能密钥,此系统安全功能密钥可禁止用户访问由 -sf 选项指定的功能。
如果在启动数据库时没有指定系统安全功能密钥,则缺省的安全功能将受到保护,所以您无法对数据库服务器或其上运行的任何数据库的安全功能设置进行更改。您无法在稍后创建系统安全功能密钥—必须关闭数据库服务器,并在重新启动时指定系统安全功能密钥。
feature-list 是针对数据库服务器的、要加以保护的功能名称或功能集逗号分隔列表。如果对某一功能进行保护,则除管理员之外的所有数据库用户将无法访问该功能。如果指定某一功能集,则该功能集中包含的所有功能均将受到保护。要对功能集中的一个或多个功能进行保护,但并不保护所有功能,请指定各个功能的名称。
在缺省情况下受到保护的功能集中,其子功能所受的保护无法通过命令行取消。也就是说,以下命令无效:
-sf manage_security, -manage_keys |
使用 feature-name 指示功能应受到保护(无法访问),使用 -feature-name 或 feature-name- 指示应取消对功能的保护(所有数据库用户均可访问)。例如,以下命令指示只有 dbspace 功能可供所有用户访问:
dbsrv16 -n secure_server -sf all,-dbspace |
以下命令启动一个名为 secure_server 的数据库服务器,启动时将保护对请求日志的访问权限,并保护所有远程数据访问功能。由 -sk 选项指定的密钥稍后可与 sp_use_secure_feature_key 系统过程一起使用,从而使这些功能可供当前连接上的所有用户访问。
dbsrv16 -n secure_server -sf remote,-request_log -sk j978kls12 |
如果连接到 secure_server 数据库服务器上所运行的数据库的用户使用 sp_use_secure_feature_key 系统过程,并将 authorization_key 参数设置为由 -sk 指定的值,则该连接能够访问远程数据访问功能:
CALL sp_use_secure_feature_key ( 'MyKey' , 'j978kls12' ); |
以下命令将保护所有功能,但本地数据库功能除外:
dbsrv16 -n secure_server -sf all,-local_db |
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |