SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for 7月, 2009

SQL Server 管理レポート その 1

leave a comment

SQL Server の管理用カスタマイズレポートの作成状況を今日からすこしずつ書いていきたいと思います。
現在はトップページを小出しに作成中です。

メインページはサーバーの概要を載せたいなと思い、現在は以下の構成で作成しています。

image

現状は大枠だけ作成してみました。

時間がある時にサーバー情報でよく見る項目を少しずつ追加していきたいと思います。
AWE / MAX DOP だけでなく max worker threads や affinity mask も概要ページで見れると便利そうですね。
#sys.configurations で確認できる情報はこのページからリンクレポートを設定して全部見れるようにする予定です。

この手の自分の勉強用のツールを作るのは楽しくていいですね~。

パフォーマンスチューニングや運用のノウハウを補足として記載しながらレポートを作成していきたいです。

Written by Masayuki.Ozawa

7月 5th, 2009 at 2:02 pm

Posted in SQL Server

SQL Server 2008 Management Studio のカスタムレポートについて

leave a comment

Reporting Services の勉強を兼ねて SQL Server 2008 用の管理用カスタムレポートを作成しようと思い、
BI Development Studio 2008 でまずは簡単なレポートを作成してカスタムレポート表示をしたら以下のエラーが。

image

SQL Server 2008 の Management Studio 用のカスタムレポートは BI Development Studio 2005 で開発する
必要があるみたいですね。

下が BIDS 2005 で作成したカスタムレポートを SSMS 2008 で表示した内容になります。

image

まずはサーバーダッシュボードのようなものを少しずつ作っていきたいと思います。
# 最終的には自分で Performance Dashboard Reports のようなものを作ってみたいです。

Written by Masayuki.Ozawa

7月 4th, 2009 at 5:45 am

Posted in SQL Server

クライアントのコンピュータアカウントのパスワード格納場所

leave a comment

Active Directory とは依然として仲良しにはなれていないのですが、そうも言っていられない日々が続いています…。

今日はコンピュータアカウントのパスワードについて。

コンピュータアカウントのパスワードはセキュリティポリシーの
– [ドメイン メンバー: 最大コンピュータ アカウントのパスワード有効期間]
の設定値で定期的に変更され、ドメイン コントローラーでも保持しているパスワードと一致しない場合は、
セキュアチャネルの確立ができず、ドメイン ログオンに失敗する仕組みになっています。

image

パスワードは 1 世代前のものも保持されており、現在のパスワードと 1 世代前のパスワードの両方を使用して
セキュアチャネルが確立できないと NG になります。

Netdom.exe を使用して Windows 2000 ドメイン コントローラのコンピュータ アカウントのパスワードをリセットする方法

セキュアチャネルについては Microsoft の Network & AD サポートチームの以下の記事がとても参考になります。

ドメインにログオンできない ~ セキュア チャネルの破損 ~

パスワードを無期限にする方法に関しては Microsoft エバンジェリスト 安納さんがまとめてくださっています。

【Hyper-V】スナップショットとコンピュータアカウントパスワードの微妙な関係

ちなみに、パスワード不整合が起きたかどうかはドメイン コントローラで対象のコンピュータアカウントの
– [badPwdCount]
– [badPasswordTime]
を見るとわかります。
ドメインコントローラーのイベントビューアでイベント ID [5722] で見る方法も。

ドメインコントローラー側は Active Directory 上にパスワードを持っているとして、クライアント側の場合は
どこにパスワードを持っているのかというと [LSA (ローカル セキュリティ 機関)] に格納されています。

LSA の内容は以下のレジストリで内容を見ることができます。

– [HKEY_LOCAL_MACHINESECURITY]
image

デフォルトの状態ではこのレジストリには [SYSTEM] しか読み取りの権限がありませんので他のユーザーで内容を確認したい場合は、
[SECURITY] を右クリックして [アクセス許可] を選択し、読み取り権限を明示的に付与する必要があります。

  1. [アクセス許可] を選択
    image
  2. 操作しているユーザーに [読み取り] を追加
    image

Windows 2000 の場合は [regedit.exe] からはアクセス許可の設定ができないため、[regedt32.exe] を使用します。

アクセス許可を設定すると [SECURITY] が展開できるようになります。

image?

コンピュータアカウントの情報は以下の場所に格納されています。
– [HKEY_LOCAL_MACHINESECURITYPolicySecret.s$MACHINE.ACC]
image?
このレジストリキーを展開すると以下の階層が表示されます。
image

[CurVal] [OldVal] がコンピュータアカウントのパスワードの値になるようです。
# [CupdTime] [OupdTime] がそれぞれの値の変更されたタイミングになります。
 ただし、世代移動のタイミングで両方の値が更新されるようで、変更されたタイミングは同じ値が入っていました。

意図的にコンピュータアカウントのパスワード不整合を発生させたい場合は、[CurVal] [OldVal] を書き換えると現象を発生させることが可能です。
あまりにも変な値を入力するとログオンできないだけでなく、ドメインからはずせなくなりますのでご利用は計画的に。

次回は意図的にパスワード不整合を発生させ、ログオンできない状態にさせてみたいと思います。

Written by Masayuki.Ozawa

7月 2nd, 2009 at 11:08 pm

Posted in Active Directory