今すぐお試しください!

製品の詳細CData ADO.NET Provider for Active Directory を確認して、無償評価版をダウンロード:

今すぐダウンロード

Powershell からの Active Directory データ連携タスクを自動化

PowerShell から Active Directory に簡単に接続する方法をお探しですか? CData ADO.NET Provider for Active Directory は、PowerShell スクリプトの優位性を使い、シンプルで簡単に使えるADO.NET インターフェース を提供します。PowerShell スクリプトで、ADO.NET オブジェクトを使って簡単にActive Directory に接続して、同期、自動化、ダウンロードなどが可能!



CData ADO.NET Provider for Active Directory は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからActive Directory API へのデータ連携を可能にします。このプロバイダーは、Active Directory の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。

クエリの実行

次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムActive Directory に実行:

  1. プロバイダーのアセンブリをロード:

    [Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for Active Directory\lib\System.Data.CData.ActiveDirectory.dll")
  2. Active Directory に接続:

    接続には、以下の設定を行います:

    • 有効な User およびPassword 情報 (e.g., Domain\BobF or cn=Bob F,ou=Employees,dc=Domain)。
    • 接続するServer のIP、ホスト名、Port を含むServer 情報。
    • BaseDN: 指定されたname にLDAP 検索の範囲を制限します。

      Note: BaseDN を狭い範囲に設定することで大幅にパフォーマンスを改善できます。例えば、cn=users,dc=domain は、cn=users およびその子の範囲に戻り値の結果を制限します。

    $constr = "User=cn=Bob F,ou=Employees,dc=Domain;Password=bob123;Server=10.0.1.2;Port=389;" $conn= New-Object System.Data.CData.ActiveDirectory.ActiveDirectoryConnection($constr) $conn.Open()
  3. ActiveDirectoryDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

    $sql="SELECT Id, LogonCount from User" $da= New-Object System.Data.CData.ActiveDirectory.ActiveDirectoryDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.id $_.logoncount }

Active Directory データの更新

$cmd = New-Object System.Data.CData.ActiveDirectoryCommand("UPDATE User SET CN='Administrator' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.ActiveDirectoryParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Active Directory へのデータの挿入

$cmd = New-Object System.Data.CData.ActiveDirectoryCommand("UPDATE User SET CN='Administrator' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.ActiveDirectoryParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Active Directory データの削除

$cmd = New-Object System.Data.CData.ActiveDirectoryCommand("UPDATE User SET CN='Administrator' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.ActiveDirectoryParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()
 
 
ダウンロード