此示例使用 Sybase Central 或 Interactive SQL 说明审计功能如何记录那些访问未授权信息的尝试。
启动 Sybase Central 并使用 SQL Anywhere 12 Demo 数据源连接到示例数据库。
这会使您以拥有 DBA 特权的用户身份进行连接。
启用审计:
右击数据库并单击 [属性]。
单击 [审计] 选项卡。
单击 [收集此数据库的所有审计信息]。
单击 [应用]。
单击 [确定]。
将名为 Test1 的用户添加到示例数据库,口令为 welcome:
右击 [用户和组],然后单击 [新建] » [用户]。
当出现提示时,命名用户 Test1,然后键入他们的口令 welcome。
为用户提供 [分析权限]。
单击 [完成]。
断开与示例数据库的连接。
使用 Sybase Central,以 Test1 身份连接到示例数据库,并尝试访问 Employees 表中的机密信息:
单击 [表],然后选择 Employees 表。
单击 [数据] 选项卡。
将出现一条错误消息,指出您没有从 Employees 表进行选择的权限。请参见权限被拒绝: %1。
单击 [确定]。
断开与示例数据库的连接。
查看此活动的审计信息:
使用 Sybase Central,以具有 DBA 权限的用户身份连接到示例数据库。
选择该数据库,然后单击右窗格中的 [审计] 选项卡。
单击 [检索审计消息]。
单击 [关闭]。
将出现审计信息。
使用过滤器选项在审计信息表中查找错误。可以通过选择 [仅错误] 选项找到 Test1 的错误。使用日期和时间信息精确定位错误。例如,如果 Test1 在 2007 年 11 月 6 日的 10:07:14 尝试访问 Employees 表,则对应审计条目类似以下条目:
2007-11-06 10:07:14 | Permission |
将示例数据库恢复至其初始状态:
右击该数据库,然后单击 [属性]。
在 [审计] 选项卡上,单击 [不收集此数据库的审计信息]。
单击 [确定]。
单击 [用户和组]。
右击 Test1,然后单击 [删除]。
启动 Interactive SQL 并使用 SQL Anywhere 12 Demo 数据源连接到示例数据库。
这会使您以 DBA 用户身份进行连接。
使用 SET OPTION 语句启用审计,如下所示:
SET OPTION PUBLIC.auditing = 'On'; |
使用 CREATE USER 语句将用户 Test1 添加到示例数据库,如下所示:
CREATE USER Test1 IDENTIFIED BY welcome; |
打开一个新的 Interactive SQL 窗口,以 Test1 身份连接到示例数据库,并尝试使用以下 SELECT 语句访问 Employees 表中的机密信息:
SELECT Surname, Salary FROM GROUPO.Employees; |
将出现一条错误消息,指出您没有从 Employees 表进行选择的权限。请参见权限被拒绝: %1。
运行以下命令查看此活动的审计信息:
dbtran -g -c "DSN=SQL Anywhere 12 Demo" -n demo.sql |
将示例数据库恢复至其初始状态:
使用 DROP USER 语句从数据库删除 Test1 用户:
DROP USER Test1; |
使用以下 SET OPTION 语句关闭审计:
SET OPTION PUBLIC.auditing = 'Off'; |
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |