Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Movable Type 5.1 ManualMovable Type 5.1 マニュアル

MS SQL Server 2008 で Windows認証 を利用する

最終更新日: 2017.10.06

ここではMS SQL Server 2008(以下 SQL Server 2008)で、Windows認証を利用してデータベースにアクセスする方法を解説します。

SQL Server 2008 インストール時の注意事項

マイクロソフト、および自社の IT 管理部門などが提供する手続きに則って、データベースをセットアップしてください。 Movable Type Advanced(以下 MTA)は、インストール時に自動で必要なDBテーブルなどを作成します。

MTA のインストールを開始する前に、データベースに関する以下の情報を確認してください。

  • データベース名
  • データベース・ユーザー名
  • パスワード
  • DB サーバのホスト名 (localhost, サーバ名, あるいはサーバの IP アドレス)
  • SQL サーバの文字コード (UTF-8 あるいは Shift_JIS) [*1]
  • ポート番号 (標準では 1433)

SQL サーバの文字コードは UTF-8 をサポートするようになりましたが。以下の問題が確認されています。

  • PHP が対応していないため、ダイナミックパブリッシングを行う場合はShift_JISで作成する必要があります。
  • Shift_JISでのデータベース設定は [mt-wizard.cgi] が出力する設定を参考にして下さい。

SQL Server 2008 が Windows認証 (Windows integrated authentication) を利用するように設定されている場合 (推奨)、データベースへアクセスするためのユーザー名と、パスワードは必要ありません。SQL Server 2008 において、Windows認証とSQL Server認証の統合認証(Mixed Authentication mode) を用いた認証が行われている場合 DBUser, DBpassword の設定が必要となります。ここではWindows認証を利用する事を前提とした解説を行います。

また、以下の CPAN モジュールのインストールが必要です。

  • DBI (バージョン1.21以上)
  • DBD::ODBC

SQL Server 2008 データベースの作成

MS SQL Server 2008 をインストールすると、GUIのセットアップツール"Microsoft SQL Server 2008 Management Studio"(以下 Management Studio)もインストールされます。

以下、作成方法の例となります。

  1. Management Studio を起動します

    起動画面

  2. Management Studio が起動したので [Windows認証] で接続します。

    起動終了、接続

    接続完了

  3. [データベース] を右クリックし、[新しいデータベース] を選択します

    新規データベースの作成

  4. [新しいデータベース] 画面の [全般] を修正します

    [新しいデータベース] 画面 > 全般

    • データベース名: mta
    • 所有者: <規定>
  5. [新しいデータベース] 画面の [オプション] を修正します

    [新しいデータベース] 画面 > オプション

    • 照合順序: Japanese_Unicode_CI_AS(UTF-8、大文字・小文字を区別しない、アクセント文字を区別する)
    • 復旧モデル: 完全
    • 互換性レベル: SQL Server 2008 (100)
  6. [OK] ボタンをクリックします

mta DB の IUSER へのユーザーマッピング

  1. [セキュリティ] > [ログイン] > [新しいログイン] を選択

    [新しいログイン] を作成

  2. [ログイン] > [全般] を修正

    [新しいログイン] を作成

    • [ログイン名] の[検索] ボタンをクリック

      [ユーザー または グループ の選択]

      • [選択するオブジェクト名を入力してください] に "IUSR" を入力し [名前の確認]ボタンをクリックします
      • [ログイン - 新規作成] 画面に戻り、[ログイン名] に "IUSR"が入っている事を確認します
  3. [ログイン] > [ユーザーマッピング] を修正

    [ユーザーマッピング] 初期画面

    [ユーザーマッピング] 設定後画面

    • [データベース] "mta" の [マップ] をチェック
    • [mtaのデータベース ロール メンバシップ] に "db_owner" を追加
  4. [OK] ボタンをクリックします

データベースへの接続テスト

Management Studioを使ってデータベースへ接続できるか確認します。

  1. Management Studio のデータベース接続画面

    データベース接続画面

    [認証] 方式が [Windows 認証]になっている事を確認して下さい。

  2. [接続] ボタンをクリックしてください。

    接続完了画面

    接続が完了したら、システムレベルでデータベースへの接続が出来たことが解ります。

mt-wizard.cgi でのデータベース設定

データベース設定画面では以下の様に入力します。

[mt-wizard.cgi - データベース設定]

mt-config.cgiのデータベース設定

#======== DATABASE SETTINGS ========

ObjectDriver UMSSQLServer
Database mta
DBHost localhost
ODBCDriver SQL Server Native Client 10.0

これで、Windows認証で接続が可能になりました。