none
NTドメインのユーザ情報を活用したい。 RRS feed

  • 質問

  • 早速ですが、NTドメインのユーザ情報を定期的に
    SQL Server2005のDBに更新することは可能でしょうか。

    NTドメインのユーザ情報を取得方法として、下記のコード
    でエクセルに書き出しました。
    Sub ListUsers全員()
        Set objComputer = GetObject("WinNT://DOMAIN")
        objComputer.Filter = Array("User")  
        i = 2
        For Each objUser In objComputer  
            Range("A" & i) = objUser.Name
            Range("B" & i) = objUser.FullName
            Range("C" & i) = objUser.Description
        i = i + 1
        Next     
    End Sub

    そしてこの情報をSQL Server2005のDBに登録してあります。
    そこで、SQL Server2005のDBとNTドメインの情報と同期
    したいですが、方法が見つかりませんご存知の方教えて頂きたく、よろしくお
    願いいたします。

    2007年3月12日 1:10

回答

  • おがわさん、ご親切に対応していただき、本当にうれしく幸せです。(^^)

    今度また困った事ありましたら、ぜひリクエストさせていただきます。

    どうもありがとうございました。

     

    2007年3月13日 10:00

すべての返信

  • こんにちは。

    「同期」という言葉が、レプリケーションのような自動で変更を反映してくれる機能という意味でおっしゃるのであれば、そのような機能はないと思います。こちらでは、エージェントで定期的に「全削除・全追加」をするジョブを実行しています。

    2007年3月12日 8:22
  •  yakken さんからの引用

    こんにちは。

    「同期」という言葉が、レプリケーションのような自動で変更を反映してくれる機能という意味でおっしゃるのであれば、そのような機能はないと思います。こちらでは、エージェントで定期的に「全削除・全追加」をするジョブを実行しています。

    yakkenさん、ご回答どうもありがとうございます。

    もしよろしいければ詳細教えていただければ幸いです。

    URLあればそれでも結構です。よろしくお願いいたします。

    2007年3月12日 10:03
  • WMI でユーザ取得して、ユーザ登録テーブルの中身を DELETE して、INSERT するって感じかな。

    私だったら、SQL Server 2005 の SQL CLR を使って、DirectoryEntry オブジェクトを使って、ごりごりしますけど。
    Active Directory 関連は私のブログ(http://blogs.sqlpassj.org/mitsugi/)あたりを調べてください。

    後、こういうシステムで問題になるのが履歴の問題です。
    誰がどの期間、どのシステムが使えて、どの権限を持っているのかを保持しなければ内部統制としては片手落ちでしょう。
    ですので、履歴テーブル持たせた方がいいですよ。

    2007年3月12日 16:34
  • おがわさんも書かれていますが、全削除・全追加というのは単に自分で作成したコード(SQLCLRでのC#とか、VBScriptでも、Perlでも)を定期的に実行するという程度のことです。すでにExcelでのユーザデータ取得は行われていらっしゃるようなので、データの追加先をセルではなくデータベースにすればよいのではないでしょうか。定期的な実行手段としては、OSのタスクとかSQLServerのジョブとかでよいのではないかと思います。

    2007年3月13日 4:38
  • おがわさん、yakkenさん。

    丁寧にご回答をいただきまして、誠に有難うございます。

    遅くなりましたが(-_-;)SQL Server 2005 Expressを利用しているので、いろいろ制限があったようです。

    いろいろしらべましたが、結局、yakkenさんのおっしゃるとおり、

    OSのタスクでやるのが一番近道かもしれませんですね。

    ※SQLCLRについては、まだやり方がよくわからないので、

    おがわさんのGLOGにいろいろ載っているので、今後も参照させていただきます。

     

    2007年3月13日 6:41
  • Active Directory を .NET 系や Java で書いている数少ない人間の一人です。
    こっちは業務に直結しているので、別段勉強しているわけではなく自分のための記事です。

    なんかこんな記事をこれぐらいの記事で書いてほしいというリクエストがあれば、BLOG や PASSJ(http://www.sqlpassj.org/) のメールニュースに書きますので気軽にコンタクトしてください。

    一応 SQL Server がメイン(趣味)なんですが、SE 兼 PG ですのでリクエストいただければサンプルコードぐらいなら書きますよ。

    #現在シアトルで Global MVP Summit 参加中なので、レスポンスは悪いですが。

    2007年3月13日 7:13
  • おがわさん、ご親切に対応していただき、本当にうれしく幸せです。(^^)

    今度また困った事ありましたら、ぜひリクエストさせていただきます。

    どうもありがとうございました。

     

    2007年3月13日 10:00