SQL Server のことなら SQL Quality SQL Server パフォーマンス チューニング、コンサルティング、アドバイス、相談、定期診断、トレーニング

ホーム > 技術情報 > SQL Server 2014 自習書 No.5 Microsoft Azure SQL Database 入門

SQL Server 2014 自習書シリーズ (HTML 版)
「No.5 Microsoft Azure SQL Database 入門」

松本美穂と松本崇博が執筆した SQL Server 2014 自習書シリーズの「No.5 Microsoft Azure SQL Database 入門」の HTML 版です。 日本マイクロソフトさんの Web サイトで Word または PDF 形式でダウンロードできますが、今回、HTML 版として公開する許可をいただきましたので、ここに掲載いたします。[2015年12月29日]

目次へ | 前のページへ | 次のページへ

3.2 Azure SQL Database での監査(Audit)

(2015年1月時点での情報)

Azure SQL Database では、監査Audit)機能が実装されているので、ログインの成功や失敗、特定のテーブル(顧客情報を格納したテーブルなど)に対するアクセスをログに記録することも簡単に行うことができます。

◆ Let's Try

それでは、これを試してみましょう。Azure SQL Database の監査機能では、アクセス ログの保存先に、Azure ストレージを利用するので、まずは、ストレージ アカウントを作成しておく必要があります。

1.ストレージ アカウントを作成するには、次のように[新規]をクリックして、[すべて]をクリックします。

00181

2.Marketplace]ブレードが表示されたら、[Storage, cache + backup]をクリックして、[Storage]をクリックします。

00182

3.Storage]ブレードが表示されたら、[作成]ボタンをクリックします。

00183

4.ストレージ アカウント]ブレードが表示されたら、[ストレージ]に任意のストレージ アカウント名を入力(画面は matustorage)、[価格レベル]でストレージ アカウントの価格を設定します。

00184

画面では、[価格レベル]に一番安い「L ローカル冗長」を選択していますが、L の場合は、データセンターの場所が West US、1ヶ月に約 100GBを利用した場合でも約 244.8円になるので、1日であれば 100GBでも 7.9円です(10GB なら 0.79円という非常に安価な設定になっているので、監査を 1日だけ試すのであれば、ほぼお金がかかりません。試し終わった後は、ストレージ アカウントを削除しておいてください)。

価格レベルを選択した後は、[選択]ボタンをクリックします。

なお、[すべて表示]をクリックした場合は、次のようにすべての価格レベルを参照することができます。

00185

5.次に[リソース グループ]で、データベースを作成するときに、作成したリソース グループである「ResourceGroup1」を選択します。

00186

6.次に、[場所](データセンターの場所)がリソース グループを作成した場所に自動変換されていることを確認します(画面は North Central US米国中北部)。

00187

設定を確認したら、[作成]ボタンをクリックします。これでストレージ アカウントの作成が開始されます。

7.ストレージ アカウントの作成中は、[通知]ブレードには、次のように表示されます。

00188

8.ストレージ アカウントの作成が完了すると、次のように[ストレージ アカウントの構成]ブレードが表示されます(表示されない場合は、[参照]をクリックして、[Storage]をクリックすれば、ストレージ アカウントの一覧を表示できるので、そこから該当ストレージ アカウントを選択するようにします)。

00189

◆ 監査の設定

ストレージ アカウントの作成が完了したら、「監査」を設定します。監査は、SQL サーバー全体に設定することもできますが、ここでは、特定のデータベース(前の Step で作成した AzureDB データベース)に対してのみ監査を設定してみます。

1.AzureDB データベースに対して、監査を設定するには、次のように[データベースの構成]ブレードを開いて、データベースとストレージ アカウントが同じリソース グループ内に存在していることを確認します。

00190

2.次に、[データベースの構成]ブレードを下にスクロールして、[監査]をクリックします。

00191

3.監査]ブレードでは、[接続文字列]をクリックします。

00192

ここでは、監査を有効にするには、これらの接続文字列を利用する必要があるという主旨の内容になっています(詳しくは後述しますが、SQL サーバーに接続するときの名前に、「.secure」を付ける必要がある形になります。2015年1月時点での情報)。

4.接続文字列の確認が終わったら、次のように[ストレージ アカウント]で先ほど作成したストレージ アカウント(画面は matustorage)を選択します。

00193

監査オプション]では、[すべて]をチェックして、[OK]ボタンをクリックします。これで監査の設定が有効になり、[すべて]を選択したことで、「データ アクセス」や「データの変更」、「スキーマの変更」などすべてを監査(ログ記録)できるようになります。

5.監査の設定が有効になると、[通知]ブレードで次のように表示されます。

00194

6.設定した直後は、次のように[監査]には「過去24時間に監査イベントはありません」と表示されます。

00195

以上で監査の設定が完了です。

◆ SQL サーバー名を変更して接続(~.database.secure.windows.net)

次に、SQL サーバーへ接続して(わざとログイン失敗などをして)、監査ログに操作を記録してみます。

1.まずは、SSDT の SQL Server オブジェクト エクスプローラーで、[SQL Server]を右クリックして、[SQL Server の追加]をクリックします。

00196

サーバーへの接続]ダイアログでは、[サーバー名]に、「matusrv1.database. secure.windows.net」のように、「.secure」を追加したものを指定するようにします。

2.次に、[パスワード]をわざと間違えて、ログインの失敗をしておきます。

00197

3.次に、正しいパスワードを入力して、SQL サーバーへ接続し、「AzureDB」データベースを右クリックして、[新しいクエリ]をクリックします。

00198

任意の SQL ステートメントを実行します。

4.ステートメントの実行が完了したら、[データベースの構成]ブレードに戻ります。

00199

今度は、監査に円グラフが表示されているので、これをクリックします(もし円グラフが表示されない場合は、SSDT で SQL サーバーに接続するときに「.secure」を追加しているかどうかを再確認してみてください。また、ストレージ アカウントとデータベースが同じリソース グループ内にあるかどうかも確認してみてください)。

5.監査]をクリックすると、次のように円グラフの詳細を確認することができます。

00200

ログイン失敗などに、回数が表示されていることを確認できると思います。

6.監査]ブレードでは、次のように[構成]をクリックすると、監査の設定を変更することができます。[すべて]を監査するように設定していたものを、データの変更など、特定のイベントのみを監査するように変更することができます。

00201

◆ .secure を必須にする場合(セキュリティが有効なアクセスを必須)

(2015年1月時点での情報)

1.監査]ブレードでは、次のように[セキュリティが有効なアクセス]で[必須]を選択することができます。

00202

このように設定した場合は、Azure SQL Database にアクセスする際に、必ず「.secure」を付けなくてはいけなくなる、という設定にできます。既定値は[省略可能]で、この場合は、「.secure」を付けなくても接続することができ、その場合は監査ログには残らない、という動作になります。

2.セキュリティが有効なアクセス]を[必須]に設定した場合は、次のように「.secure」を付けない場合は、接続エラーになります。

00203


◆ Excel 2013 のテンプレート ファイルを開く ~Power Query~

(2015年1月時点での情報)

監査ログは、Excel 2013 を利用して、次のようにグラフィカルに参照することもできます。

00204

これを利用する手順は、次のとおりです。

1.まずは、[監査]ブレードで、次のように[Excel で開く]をクリックします。

00205

これにより、「01-Azure SQL DB Audit Logs Report Template.xlsx」という名前の Excel 2013 形式のテンプレート ファイルのダウンロードが行えます([保存]ボタンをクリックします)。

2.このテンプレートは、Power Query for Excel のクエリ機能を利用しているので、次の URL から Power Query for Excel をダウンロードして、インストールしておく必要があります。

http://www.microsoft.com/ja-jp/download/details.aspx?id=39379

00206

00207

00208

3.このテンプレートは、Excel 2013 の Pwer View 機能も利用しているので、Excel 2013 を起動した後、次のように[オプション]設定で、Power View 機能を有効化しておくようにします。

00209

4.Power Query for Excel のインストールと Power View の有効化が完了したら、ダウンロードした「01-Azure SQL DB Audit Logs Report Template.xlsx」ファイルを Excel 2013 で開きます。

00210

保護ビュー]バーが表示されたら[編集を有効にする]ボタンをクリックします。

5.次に、[POWER QUERY]タブを開いて、[ブッククエリ]の[ペインを表示する]をクリックします。

00211

右側に[ブック クエリ]ペインが表示されたら、[AuditLogs]という名前のクエリを右クリックして、[編集]をクリックします。

6.これにより、[クエリ エディター]ウィンドウが表示されるので、[ホーム]タブで[詳細エディター]をクリックします。

00212

詳細エディター]ダイアログが表示されたら、「yourstorage」と記述してある部分を、監査を設定したときに選択したストレージ アカウントに変更(筆者の場合は matustorage に変更)して、[完了]ボタンをクリックします。

7.クエリ エディターに戻ったら、[資格情報の編集]ボタンをクリックします。

00213

これにより、ストレージへのアクセス ダイアログが表示されるので、[アカウント キー]にストレージ アカウントにアクセスするためのアカウント キーを入力して、[保存]ボタンをクリックします。

アカウント キーは、次のように[ストレージの構成]ブレードで、[キー]をクリックすることで確認することができます(プライマリ アクセス キーまたはセカンダリ アクセス キーをコピーしたものを上のダイアログで貼り付けます)。

00214

8.正しいアクセス キーを入力していると、次のように監査ログのデータが読み込まれます。

00215

次に、[閉じて読み込む]ボタンをクリックして、クエリ エディターを終了します。

9.Excel 2013 に戻ると、[ブック クエリ]の「AuditLogs」クエリが実行されて、ログの読み込みが行われます(読み込みが完了するまで待ちます)。

00216

10.読み込みが完了した後は、次のようにテンプレート ファイルの内のグラフが連動して、グラフィカルに監査状況を確認できるようになります。

00217

11.次のように[Event Type Distribution]タブを開くと、Power View で作られたレポートになっていて、インタラクティブにグラフをクリックしたり、フィルターを設定したりできるようになっています。

00218

なお、Power View は Silverlight 機能を利用しているので、インストールを行っていない場合は、Silverlight のインストールが促されます

◆ Azure SDK 2.5 で監査テーブルの参照

Azure SDK 2.5 をインストールしている環境では、Visual Studio のサーバー エクスプローラーを利用して、監査によって内部利用されているテーブル(SQLDBAuditLogs2014~ という名前)の中身を、次のように直接参照することもできます。

00219

Azure SDK 2.5 は、次の URL からダウンロードすることができます。

Announcing Azure SDK 2.5 for .NET and Visual Studio 2015 Preview
http://azure.microsoft.com/blog/2014/11/12/announcing-azure-sdk-2-5-for-net-and-visual-studio-2015-preview/

00220

目次へ | 前のページへ | 次のページへ

事例1

MPNロゴ


SQLQualityは執筆とセミナーを通じて技術の啓蒙やエンジニアの育成支援も行っています
最新刊
SQL Server 2012 の教科書
SQL Server 2012 の教科書(ソシム)

弊社オリジナル制作の
SQL Server 2012 自習書も
マイクロソフトのサイトで公開中!
ロングセラー
ASP.NET でいってみよう  SQL Server 2000 でいってみよう
ASP.NET でいってみよう
第7刷 16,500 部発行
SQL Server 2000 でいってみよう
第12刷 28,500 部発行


セミナー風景
セミナー風景

弊社執筆の
SQL Server 2012 自習書
マイクロソフトのサイトで公開中
全30冊
ダウンロードはこちら
弊社執筆の
SQL Server 2008 R2 自習書
マイクロソフトのサイトで公開中
全30冊
目次はこちら
松本美穂のコラム
(公開活動などのお知らせ)

第 51 回:PASS Summit と MVP Summit で進化を確信!
第 50 回:新しくなった Power BI(2.0)の自習書を作成しました!
第49 回:Excel 2016 の Power Query を使う
第 48 回:新しくなった Microsoft Power BI ! 無料版がある!!
第 47 回:「Microsoft Azure SQL Database 入門」 完成&公開!
第 46 回:Microsoft Power BI for Windows app からの Power BI サイト アクセス
第 45 回:Power Query で取得したデータを PowerPivot へ読み込む方法と PowerPivot for Excel 自習書のご紹介
第44回:「SQL Server 2014 への移行とアップグレードの実践」ドキュメントを作成しました
第43回:SQL Server 2014 インメモリ OLTP 機能の上級者向けドキュメントを作成しました
第42回:Power Query プレビュー版 と Power BI for Office 365 へのクエリ保存(共有クエリ)
第41回:「SQL Server 2014 CTP2 インメモリ OLTP 機能の概要」自習書のお知らせです
第40回: SQL Server 2012 自習書(HTML版)を掲載しました
第39回: Power BI for Office 365 プレビュー版は試されましたか?
第38回: SQL Server 2014 CTP2 の公開
第37回: SQL Server 2014 CTP1 の自習書をご覧ください
第36回: SQL Server 2014 CTP1 のクラスター化列ストア インデックスを試す
第35回: SQL Server 2014 CTP1 のインメモリ OLTP の基本操作を試す
第34回: GeoFlow for Excel 2013 のプレビュー版を試す
第33回: iPad と iPhone からの SQL Server 2012 Reporting Servicesのレポート閲覧
第32回: PASS Summit 2012 参加レポート
第31回: SQL Server 2012 Reporting Services 自習書のお知らせ
第30回: SQL Server 2012(RTM 版)の新機能 自習書をご覧ください
第29回: 書籍「SQL Server 2012の教科書 開発編」のお知らせ
第26回: SQL Server 2012 の Power View 機能のご紹介
第25回: SQL Server 2012 の Data Quality Services
第24回: SQL Server 2012 自習書のご案内と初セミナー報告
第23回: Denali CTP1 が公開されました
第22回 チューニングに王道あらず
第21回 Microsoft TechEd 2010 終了しました
第20回 Microsoft TechEd Japan 2010 今年も登壇します
第19回 SQL Server 2008 R2 RTM の 日本語版が公開されました
第18回 「SQL Azure 入門」自習書のご案内
第17回 SQL Server 2008 自習書の追加ドキュメントのお知らせ
第16回 SQL Server 2008 R2 自習書とプレビュー セミナーのお知らせ
第15回 SQL Server 2008 R2 Reporting Services と新刊のお知らせ
第14回 TechEd 2009 のご報告と SQL Server 2008 R2 について
第13回 SQL Server 2008 R2 の CTP 版が公開されました
第12回 MVP Summit 2009 in Seattle へ参加

技術コミュニティでも活動中

Microsoft MVP for SQL Server

松本美穂松本崇博

松本崇博 Blog(SQL Server Tips)
松本美穂ブログ(SQL Serverノート)