XRMツールにPowerShell cmdlets を使用して Microsoft Dataverseに接続する

XRM ツールでは、次の Windows PowerShell コマンドレットを使用して Dataverse に接続し、現在のユーザーがアクセス権を持つ組織を取得できます: Get-CrmConnection および Get-CrmOrganizations

前提条件

  • XRM ツールのコマンドレットを使用するにはバージョン 3.0 以降の PowerShell が必要です。 バージョンを確認するには PowerShell のウィンドウを開き次のコマンドを実行します: $Host

  • 実行ポリシーを設定して署名済みの PowerShell スクリプトを実行します。 それには PowerShell ウィンドウを administrator として開き、次のコマンドを実行します: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Microsoft.Xrm.Tooling.CrmConnector.PowerShell cmdlet を取得する

Microsoft.Xrm.Tooling.CrmConnector.PowerShell cmdletを使用するには、インストールをする必要があります。 XRMツール である PowerShell cmdlet は、PowerShell Galleryで使用することができます。 cmdlet のダウンロードとインストールをします。

PowerShell または PowerShell ISE を管理モードで開き、次のコマンドを実行します:

Install-Module -Name Microsoft.Xrm.Tooling.CrmConnector.PowerShell

既にモジュールをインストールしている場合は、次のコマンドで更新できます:

Update-Module -Name Microsoft.Xrm.Tooling.CrmConnector.PowerShell

以上で、 Microsoft.Xrm.Tooling.CrmConnector.PowerShell cmdletを使用する準備ができました。 登録した関数を一覧表示するには、PowerShellウィンドウで次のコマンドを実行します:

Get-Help “Crm”  

コマンドレットを使用して、Dataverse アプリから組織を取得

Get-CrmOrganizations コマンドレットを使用して、アクセスできる組織を取得します。

  1. Dataverse インスタンスに接続する資格情報を入力します。 次のコマンドを実行すると Dataverse インスタンスに接続するためのユーザー名とパスワードの入力を要求され、それらは $Cred 変数に保存されます。

    $Cred = Get-Credential  
    
  2. 次のコマンドを使用して組織を取得し、その情報を $CRMOrgs 変数に格納します

    • Dataverse インスタンスに接続している場合:

      $CRMOrgs = Get-CrmOrganizations -Credential $Cred -DeploymentRegion NorthAmerica –OnlineType Office365  
      

      注意

      DeploymentRegion パラメーターの有効な値は、NorthAmericaEMEAAPACSouthAmericaOceaniaJPNCANIND、および NorthAmerica2 です。 OnlineType パラメーターの場合には、Office365 を指定します。

  3. 手順 2 でコマンドを実行するときに、入力した資格情報が検証されます。 コマンドの実行が成功したら、次のコマンドを入力してから Enter キーを押し、アクセスできる組織を表示します。

    $CRMOrgs  
    

    Dataverse 組織情報。

ヒント

取得した Dataverse 組織を格納するために使用された変数 (この場合は、$CRMOrgs) を、Get-CrmConnection コマンドレットとともに使用して、Dataverse に接続できます。 組織名を指定するには、コマンド $CRMOrgs.UniqueName を使用します。

$CRMOrgs 変数に格納されている組織の値が複数の場合は、コマンド $CRMOrgs[n-1] を使用して nth の組織を参照できます。 たとえば、$CRMOrgs 変数の 2 番目の組織の一意の名前を参照するには、コマンド $CRMOrgs[1].UniqueName を使用します。

コマンドレットを使用して Dataverse アプリに接続

Get-CrmConnection コマンドレットを使用して Dataverse のインスタンスに接続する。 このコマンドレットにより、XRM ツール共通ログイン コントロールを使用して資格情報を指定して Dataverse に接続するか、または資格情報をインライン パラメーターとして指定することができます。 詳細: XRM ツールの共通ログイン コントロールを使用する

重要

Get-CrmConnection コマンドレットを使用する前に、次のコマンドを使用して PowerShell によるTLS 1.2の使用を強制し、Dataverse インスタンスに接続してください
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
Dataverse 接続に関する TLS 1.2 要件の詳細については、ブログ: Dataverse 接続セキュリティに関する更新を参照してください

共通ログイン コントロールを使用して Dataverse に接続

  1. 共通ログイン コントロールを使用して資格情報を提供し、Dataverse に接続する場合は、次のコマンドを使用します。 接続情報は、後で使用できるように、$CRMConn 変数に保存されます。

    $CRMConn = Get-CrmConnection -InteractiveMode  
    
  2. LoginControl ダイアログ ボックスが表示されます。 Dataverse のインスタンスに接続するための資格情報を入力して ログイン をクリックします。

資格情報をインラインで指定して Dataverse アプリに接続

  1. Dataverse に接続するには、次のコマンドを使用します。 これらのコマンドは、先に作成した $Cred 変数を使用して、組織を取得すると同時に、資格情報を保存します。 接続情報は $CRMConn 変数に保存されます。

    • Dataverse インスタンスに接続している場合

      $CRMConn = Get-CrmConnection -Credential $Cred -DeploymentRegion <Deployment region name> –OnlineType Office365 –OrganizationName <OrgName>  
      

      注意

      DeploymentRegion パラメーターの有効な値は、NorthAmericaEMEAAPACSouthAmericaOceaniaJPNCANIND および NorthAmerica2 です。 OnlineType パラメーターの場合には、Office365 を指定します。

      注意

      前のすべてのコマンドの OrganizationName パラメーターについて、組織の一意の名前またはフレンドリ名を指定できます。 また、Get-CrmOrganizations コマンドレットを使用して取得して $CRMOrgs 変数に保存した、組織の一意の名前またはフレンドリ名も使用できます。 たとえば、$CRMOrgs[x].UniqueName または $CRMOrgs[x].FriendlyName を使用できます。

  2. 手順 1 でコマンドを実行するときに、入力した資格情報が検証されます。 コマンドレットの実行が成功したら、次のコマンドを入力してから Enter キーを押し、接続情報と状態を表示します。

     $CRMConn  
    

    Dataverse 接続情報とステータス。

OAuth を使用した Dataverse への接続

OAuth 認証は、-InteractiveMode パラメーターを指定する場合に、XRM ツールによって内部的に使用されます。

$CRMConn = Get-CrmConnection -InteractiveMode  

OAuth 認証は、AuthType=OAuth または AuthType=ClientSecret の場合に、接続文字列を使用する場合にも指定できます。

$CRMConn = Get-CrmConnection -ConnectionString "AuthType=ClientSecret;ClientId=..."

詳細情報: XRM ツールの接続文字列を使用して、Microsoft Dataverse に接続

参照

XRM ツール API を使用して Dataverse に接続する
XRM ツールを使用して Windows のクライアント アプリケーションを作成する
ブログ: Dataverse でデータ操作を実行し、ユーザーやシステム設定の操作に使用する PowerShell モジュール

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。