次の例はそれぞれ、Sybase Central または Interactive SQL を使用して、権限のない情報へのアクセス試行を監査機能がどのように記録するかを示しています。
Sybase Central を起動し、SQL Anywhere 16 Demo データソースを使用してサンプルデータベースに接続します。
これで、SYS_AUTH_DBA_ROLE システムロールを持つユーザとして接続します。
監査を有効にします。
データベースを右クリックし、[プロパティ] をクリックします。
[監査] タブをクリックします。
[このデータベースの監査情報をすべて収集する] をクリックします。
[適用] をクリックします。
[OK] をクリックします。
Test1 というユーザを、welcome というパスワードでサンプルデータベースに追加し、MANAGE PROFILING システム権限を付与します。
[ユーザ] を右クリックし、[新規] » [ユーザ] をクリックします。
プロンプトが表示されたら、ユーザ名に Test1、パスワードに welcome を入力します。
[完了] をクリックします。
新しいユーザを [ユーザ] で選択し、[システム権限] タブに移動します。
[システム権限] タブを右クリックし、[新規] » [付与されたシステム権限] をクリックします。
MANAGE PROFILING を選択し、[OK] をクリックして、Test1 に MANAGE PROFILING システム権限を付与します。
Sybase Central のメインメニューで [ファイル] » [保存] をクリックして、変更を保存します。
Sybase Central のメインメニューで [接続] » [切断] をクリックして、サンプルデータベースとの接続を切断します。
Sybase Central を使用して、Test1 としてサンプルデータベースに接続し、Employees テーブル内の機密情報へのアクセスを試みます。
[テーブル] を選択し、Employees テーブルをクリックします。
[データ] タブをクリックします。
Employees テーブルから選択するためのパーミッションがないことを示すエラーメッセージが表示されます。パーミッションがありません : %1を参照してください。
[OK] をクリックします。
サンプルデータベースを切断します。
このアクティビティの監査情報を表示します。
[SQL Anywhere 16] プラグインを使用してデータベースに接続します。
データベースを選択し、右ウィンドウ枠の [監査] タブをクリックします。
[監査メッセージの取得] をクリックします。
[閉じる] をクリックします。
監査情報が表示されます。
フィルタリングオプションを使用して、監査情報テーブル内のエラーを探します。[エラーのみ] オプションを選択することによって、Test1 のエラーを見つけることができます。日付と時刻の情報を使用して、エラーを特定します。たとえば、2007 年 11 月 6 日 10:07:14 に Test1 が Employees テーブルへのアクセスを試みた場合、対応する監査エントリは次のようになります。
2007-11-06 10:07:14 | Permission |
サンプルデータベースを元の状態にリストアします。
データベースを右クリックし、[プロパティ] をクリックします。
[監査] タブで、[このデータベースの監査情報を収集しない] をクリックします。
[OK] をクリックします。
[ユーザ] をクリックします。
Test1 を右クリックし、[削除] をクリックします。
Interactive SQL を起動し、SQL Anywhere 16 Demo データソースを使用してサンプルデータベースに接続します。
これで、SYS_AUTH_DBA_ROLE システムロールを持つユーザとして接続します。
次のように 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 16 Demo" -n demo.sql |
サンプルデータベースを元の状態にリストアします。
DROP USER 文を使用して、データベースから Test1 ユーザを削除します。
DROP USER Test1; |
次の SET OPTION 文を使用して、監査を無効にします。
SET OPTION PUBLIC.auditing = 'Off'; |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |