Microsoft Azure への接続

最終公開日 : Nov 13, 2026
注:
2023 年 7 月以降、Microsoft は Azure Active Directory (Azure AD) を Microsoft Entra ID に名称変更しました。このドキュメントでは、Azure Active Directory、Azure AD、または AAD へのすべての参照は、Microsoft Entra ID を指します。
(/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections.html)では、接続を作成するウィザードについて説明します。以下の情報は、Azure Resource Managerクラウド環境に固有の詳細を扱います。
注:
Microsoft Azure への接続を作成する前に、リソースの場所として Azure アカウントの設定を完了する必要があります。「Microsoft Azure Resource Manager クラウド環境」を参照してください。

サービスプリンシパルと接続の作成

接続を作成する前に、接続がAzureリソースにアクセスするために使用するサービスプリンシパルを設定する必要があります。接続は2つの方法で作成できます。
  • Web Studio を使用してサービスプリンシパルと接続を同時に作成する
  • 以前に作成したサービスプリンシパルを使用して接続を作成する
このセクションでは、次のタスクを完了する方法を示します。
  • (/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections/connection-azure-resource-manager.html#create-a-service-principal-using-powershell)
  • (/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections/connection-azure-resource-manager.html#get-the-application-secret-in-azure)
  • 既存のサービスプリンシパルを使用して接続を作成する](/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections/connection-azure-resource-manager.html#create-a-connection-using-an-existing-service-principal)

考慮事項

  • Citrix® は、共同作成者ロールを持つサービスプリンシパルの使用を推奨しています。ただし、最小限の権限のリストについては、「最小限の権限」セクションを参照してください。
  • 最初の接続を作成するとき、Azure は必要な権限を付与するよう求めます。今後の接続では、引き続き認証が必要ですが、Azure は以前の同意を記憶しており、プロンプトを再度表示することはありません。
  • 認証に使用されるアカウントは、Azure RBAC を使用してサブスクリプション内でロールを割り当てる権限を持っている必要があります。例として、サブスクリプションの所有者、ロールベースのアクセス制御管理者、またはユーザーアクセス管理者などです。
  • 認証に使用されるアカウントは、サブスクリプションのディレクトリのメンバーである必要があります。注意すべきアカウントの種類は、「職場または学校」と「個人用 Microsoft アカウント」の2種類です。詳細については、CTX219211 を参照してください。
  • 既存の Microsoft アカウントをサブスクリプションのディレクトリのメンバーとして追加して使用することはできますが、ユーザーが以前にディレクトリのリソースのいずれかへのゲストアクセスを許可されていた場合、問題が発生する可能性があります。この場合、ディレクトリ内に必要な権限を付与しないプレースホルダーエントリが存在し、エラーが返される可能性があります。
    ディレクトリからリソースを削除し、明示的に追加し直すことで、これを修正します。ただし、このオプションは、アカウントがアクセスできる他のリソースに意図しない影響を与える可能性があるため、慎重に実行してください。
  • 特定のアカウントが実際にはメンバーであるにもかかわらず、ディレクトリゲストとして検出される既知の問題があります。このような構成は、通常、古くから確立されたディレクトリアカウントで発生します。回避策: ディレクトリにアカウントを追加し、適切なメンバーシップ値を取得します。
  • リソースグループは単にリソースのコンテナであり、自身のリージョン以外のリージョンからのリソースを含むことができます。これは、リソースグループのリージョンに表示されるリソースが利用可能であると期待している場合、混乱を招く可能性があります。
  • 必要な数のマシンをホストするのに十分な大きさのネットワークとサブネットがあることを確認してください。これにはある程度の先見性が必要ですが、Microsoft はアドレス空間の容量に関するガイダンスを提供し、適切な値を指定するのに役立ちます。

Web Studio を使用してサービスプリンシパルと接続を作成する

重要:
この機能は、Azure China サブスクリプションではまだ利用できません。
Web Studio を使用すると、単一のワークフローでサービスプリンシパルと接続の両方を作成できます。サービスプリンシパルは、接続に Azure リソースへのアクセスを許可します。サービスプリンシパルを作成するために Azure に認証すると、アプリケーションが Azure に登録されます。登録されたアプリケーションには、秘密鍵 (クライアントシークレットまたはアプリケーションシークレットと呼ばれます) が作成されます。登録されたアプリケーション (この場合は接続) は、クライアントシークレットを使用して Azure AD に認証します。
開始する前に、以下の前提条件を満たしていることを確認してください。
  • サブスクリプションの Azure Active Directory テナントにユーザーアカウントがあること。
  • 認証に使用されるアカウントは、Azure RBAC を使用してサブスクリプション内でロールを割り当てる権限を持っている必要があります。例として、サブスクリプションの所有者、ロールベースのアクセス制御管理者、またはユーザーアクセス管理者などです。
  • 認証のためのグローバル管理者、アプリケーション管理者、またはアプリケーション開発者の権限があること。これらの権限は、ホスト接続の作成後に取り消すことができます。ロールの詳細については、「Azure AD の組み込みロール」を参照してください。
接続とリソースの追加ウィザードを使用して、サービスプリンシパルと接続を一緒に作成します。
  1. 接続ページで、新しい接続の作成、Microsoft Azure接続タイプ、およびAzure環境を選択します。
  2. 仮想マシンを作成するために使用するツールを選択し、次へを選択します。
  3. ページで、Azure サブスクリプション ID と接続の名前を入力します。サブスクリプション ID を入力すると、 ボタンが有効になります。
    注:
    接続名には 1~64 文字を含めることができ、空白のみ、または文字 \/;:#.*?=<>|[]{}"'()' を含めることはできません。
  4. を選択し、Azure Active Directory アカウントのユーザー名とパスワードを入力します。
  5. サインインを選択します。
  6. 「Accept」を選択して、Citrix Virtual Apps and Desktops™ に一覧表示された権限を付与します。Citrix Virtual Apps and Desktops は、指定されたユーザーに代わって Azure リソースを管理できるようにするサービスプリンシパルを作成します。
  7. 「Accept」を選択すると、ウィザードの「Connection」ページに戻ります。
    注:
    Azure への認証が正常に完了すると、「Create new」ボタンと「Use existing」ボタンが消えます。「Connection successful」というテキストが緑色のチェックマークとともに表示され、Azure サブスクリプションへの接続が成功したことを示します。
  8. 「Connection Details」ページで、「Next」を選択します。
    注:
    Azure への認証が正常に完了し、必要な権限の付与に同意するまで、次のページに進むことはできません。
  9. 接続のリソースを構成します。リソースには、リージョンとネットワークが含まれます。
    • 「地域」ページで、地域を選択します。
    • 「ネットワーク」ページで、次の操作を行います。
      • リージョンとネットワークの組み合わせを識別しやすくするために、1~64文字のリソース名を入力します。リソース名には、空白のみを含めることや、文字 \/;:#.*?=<>|[]{}"'()' を含めることはできません。
      • 仮想ネットワーク/リソースグループのペアを選択します。(同じ名前の仮想ネットワークが複数ある場合、ネットワーク名とリソースグループをペアにすることで、一意の組み合わせが提供されます。)前のページで選択した地域に仮想ネットワークがない場合は、そのページに戻り、仮想ネットワークがある地域を選択してください。
  10. 「概要」ページで、設定の概要を確認し、「完了」を選択してセットアップを完了します。

アプリケーションIDを表示する

接続を作成した後、その接続がAzureリソースへのアクセスに使用するアプリケーションIDを表示できます。
「Add Connection and Resources」リストで、接続を選択して詳細を表示します。「Details」タブにはアプリケーションIDが表示されます。

PowerShellを使用してサービスプリンシパルを作成する

PowerShellを使用してサービスプリンシパルを作成するには、Azure Resource Managerサブスクリプションに接続し、以下のセクションで提供されているPowerShellコマンドレットを使用します。
次の項目を準備してください。
  • SubscriptionId: VDAをプロビジョニングするサブスクリプションのAzure Resource Manager SubscriptionID。
  • 「ActiveDirectoryID」: Azure AD に登録したアプリケーションのテナントID。
  • 「ApplicationName」: Azure AD で作成するアプリケーションの名前。
詳細な手順は次のとおりです。
Azure Resource Manager サブスクリプションに接続します。
`Connect-AzAccount`
  1. サービスプリンシパルを作成する Azure Resource Manager サブスクリプションを選択します。
    Get-AzSubscription -SubscriptionId $subscriptionId | Select-AzSubscription
  2. AD テナントにアプリケーションを作成します。
    $AzureADApplication = New-AzADApplication -DisplayName $ApplicationName
  3. サービスプリンシパルを作成します。
    New-AzADServicePrincipal -ApplicationId $AzureADApplication.AppId
  4. サービスプリンシパルにロールを割り当てます。
    New-AzRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $AzureADApplication.AppId –scope /subscriptions/$SubscriptionId
  5. PowerShell コンソールの出力ウィンドウから ApplicationId をメモします。ホスト接続を作成する際に、その ID を指定します。

Azure でアプリケーションシークレットを取得する

既存のサービスプリンシパルを使用して接続を作成するには、まず Azure portal でサービスプリンシパルのアプリケーションIDとシークレットを取得する必要があります。
詳細な手順は次のとおりです。
  1. Web Studio から、または PowerShell を使用して「Application ID」を取得します。
  2. Azureポータルにサインインします。
  3. Azure で、「Azure Active Directory」を選択します。
  4. Azure AD の「App registrations」から、アプリケーションを選択します。
  5. 証明書とシークレットに移動します。
  6. クライアントシークレットをクリックします。

既存のサービスプリンシパルを使用して接続を作成する

サービスプリンシパルが既にある場合は、それを使用して Web Studio で接続を作成できます。
次の項目を準備してください。
  • SubscriptionId
  • ActiveDirectoryID (テナントID)
  • アプリケーションID
  • アプリケーションシークレット
    詳細については、「アプリケーションシークレットの取得」を参照してください。
  • シークレットの有効期限
詳細な手順は次のとおりです。
接続とリソースの追加ウィザードで、次の手順を実行します。
  1. 接続ページで、新しい接続の作成、Microsoft Azure接続タイプ、およびAzure環境を選択します。
  2. 仮想マシンを作成するために使用するツールを選択し、次へを選択します。
  3. 「接続の詳細」ページで、Azure サブスクリプション ID と接続の名前を入力します。
    注:
    接続名には 1~64 文字を含めることができ、空白のみ、または文字 \/;:#.*?=<>|[]{}"'()' を含めることはできません。
  4. 既存を使用を選択します。既存のサービスプリンシパルの詳細ウィンドウで、既存のサービスプリンシパルに対して次の設定を入力します。詳細を入力すると、保存ボタンが有効になります。保存を選択します。有効な詳細情報を提供するまで、このページから先に進むことはできません。
    • サブスクリプションID。AzureサブスクリプションIDを入力します。サブスクリプションIDを取得するには、Azureポータルにサインインし、サブスクリプション > 概要に移動します。
    • Active Directory ID (テナント ID)。Azure AD に登録したアプリケーションのディレクトリ (テナント) ID を入力します。
    • アプリケーション ID。Azure AD に登録したアプリケーションのアプリケーション (クライアント) ID を入力します。
    • アプリケーションシークレット。シークレットキー (クライアントシークレット) を作成します。登録済みアプリケーションは、このキーを使用して Azure AD に対して認証を行います。セキュリティ上の理由から、キーを定期的に変更することをお勧めします。キーは後で取得できないため、必ず保存してください。
    • シークレットの有効期限。アプリケーションシークレットの有効期限が切れる日付を入力します。シークレットキーの有効期限が切れる 14 日前から、「ホスティング」ノードの特定のホスト接続に警告アイコンが表示されます。ただし、シークレットキーの有効期限が切れると、エラーが発生します。
      注:
      セキュリティ上の理由から、有効期限は現在から2年を超えることはできません。
    • 認証 URL。このフィールドは自動的に入力され、編集できません。
    • 管理 URL。このフィールドは自動的に入力され、編集できません。
    • ストレージサフィックス。このフィールドは自動的に入力され、編集できません。
      AzureでMCSカタログを作成するには、以下のエンドポイントへのアクセスが必要です。これらのエンドポイントへのアクセスにより、ネットワークとAzureポータルおよびそのサービス間の接続が最適化されます。
      • 認証URL: <https://login.microsoftonline.com/>
      • 管理URL: <https://management.azure.com/>。これはAzure Resource ManagerプロバイダーAPIのリクエストURLです。管理のエンドポイントは環境によって異なります。たとえば、Azure Globalの場合は<https://management.azure.com/>、Azure US Governmentの場合は<https://management.usgovcloudapi.net/>です。
      • ストレージサフィックス: <https://*.core.windows.net./>。これはストレージサフィックスのワイルドカード文字(*)です。例: https://demo.table.core.windows.net/。
  5. 保存を選択すると、「接続の詳細」ページに戻ります。「次へ」を選択して次のページに進みます。
  6. 接続のリソースを構成します。リソースは、リージョンとネットワークで構成されます。
    • 「地域」ページで、地域を選択します。
    • 「ネットワーク」ページで、次の操作を行います。
      • リージョンとネットワークの組み合わせを識別しやすくするために、1~64 文字のリソース名を入力します。リソース名には空白のみ、または文字 \/;:#.*?=<>|[]{}"'()' を含めることはできません。
      • 仮想ネットワーク/リソースグループのペアを選択します。(同じ名前の仮想ネットワークが複数ある場合、ネットワーク名とリソースグループをペアにすることで、一意の組み合わせが提供されます。)前のページで選択した地域に仮想ネットワークがない場合は、そのページに戻り、仮想ネットワークがある地域を選択してください。
  7. 「概要」ページで、設定の概要を確認し、「完了」を選択してセットアップを完了します。

サービスプリンシパルと接続を管理する

このセクションでは、サービスプリンシパルと接続を管理する方法について詳しく説明します。

Azure スロットリング設定の構成

Azure Resource Manager は、サブスクリプションとテナントに対する要求を調整し、プロバイダーの特定のニーズに合わせて定義された制限に基づいてトラフィックをルーティングします。詳細については、Microsoft サイトのResource Manager 要求のスロットリングを参照してください。サブスクリプションとテナントには制限があり、多数のマシンを管理すると問題が発生する可能性があります。たとえば、多数のマシンを含むサブスクリプションでは、電源操作に関連するパフォーマンスの問題が発生する可能性があります。
ヒント:
詳細については、「Machine Creation Services を使用した Azure パフォーマンスの向上」を参照してください。
これらの問題を軽減するために、MCS の内部スロットリングを削除して、Azure から利用可能な要求クォータをより多く使用できます。
たとえば、1,000 台の VM を含む大規模なサブスクリプションで VM の電源をオンまたはオフにする場合は、次の最適な設定をお勧めします。
  • 絶対同時操作数: 500
  • 1 分あたりの最大新規操作数: 2000
  • 操作の最大同時実行数: 500
Web Studio を使用して、特定の Azure 接続の Azure 操作を構成します。
  1. Web Studio で、左側のペインの を選択します。
  2. 接続を選択します。
  3. ウィザードで、 を選択します。
  4. ページで、構成オプションを使用して、同時アクションの数、1 分あたりの最大新規アクション数、および追加の接続オプションを指定します。
Azure スロットリング
MCS はデフォルトで最大 500 の同時操作をサポートします。または、Remote PowerShell SDK を使用して、同時操作の最大数を設定することもできます。
PowerShell プロパティ MaximumConcurrentProvisioningOperations を使用して、Azure プロビジョニングの同時操作の最大数を指定します。このプロパティを使用する際は、以下を考慮してください。
  • MaximumConcurrentProvisioningOperations のデフォルト値は 500 です。
  • PowerShell コマンド Set-item を使用して、MaximumConcurrentProvisioningOperations パラメーターを構成します。

Azure でのイメージ共有を有効にする

マシンカタログを作成または更新する際、異なるAzureテナントおよびサブスクリプション(Azure Compute Galleryを介して共有)から共有イメージを選択できます。テナント内またはテナント間でイメージ共有を有効にするには、Azureで必要な設定を行う必要があります。

テナント内でのイメージ共有(サブスクリプション間)

別のサブスクリプションに属するAzure Compute Galleryのイメージを選択するには、そのサブスクリプションのサービスプリンシパル (SPN) とイメージを共有する必要があります。
たとえば、Studioで次のように構成されているサービスプリンシパル (SPN 1) がある場合:
サービスプリンシパル: SPN 1
サブスクリプション: subscription 1
テナント: tenant 1
イメージは別のサブスクリプションにあり、Studio では次のように構成されています。
サブスクリプション: subscription 2
テナント: tenant 1
subscription 2のイメージをsubscription 1 (SPN 1) と共有したい場合は、subscription 2に移動し、リソースグループをSPN1と共有します。
イメージは、Azure ロールベースのアクセス制御 (RBAC) を使用して別の SPN と共有する必要があります。Azure RBAC は、Azure リソースへのアクセスを管理するために使用される承認システムです。Azure RBAC の詳細については、Microsoft ドキュメント Azure ロールベースのアクセス制御 (Azure RBAC) とは を参照してください。アクセスを許可するには、リソースグループスコープでサービスプリンシパルに共同作成者ロールを割り当てます。Azure ロールを割り当てるには、ユーザーアクセス管理者や所有者などの Microsoft.Authorization/roleAssignments/write 権限が必要です。別の SPN とイメージを共有する方法の詳細については、Microsoft ドキュメント Azure portal を使用して Azure ロールを割り当てる を参照してください。
PowerShell コマンドを使用して別のサブスクリプションからイメージを選択する方法については、「」(#select-an-image-from-a-different-subscription) を参照してください。

テナント間で画像を共有する

Azure Compute Gallery を使用してテナント間でイメージを共有するには、アプリケーション登録を作成します。
たとえば、2つのテナント (テナント1とテナント2) があり、テナント1とイメージギャラリーを共有したい場合は、次の手順を実行します。
  1. テナント1のアプリケーション登録を作成します。詳細については、「アプリ登録の作成」を参照してください。
  2. ブラウザを使用してサインインを要求することで、テナント2にアプリケーションへのアクセスを許可します。Tenant2 ID をテナント1のテナントIDに置き換えます。Application (client) ID を作成したアプリケーション登録のアプリケーションIDに置き換えます。置換が完了したら、URLをブラウザに貼り付け、サインインプロンプトに従ってテナント2にサインインします。例:
    https://login.microsoftonline.com/<Tenant 2 ID>/oauth2/authorize?client_id=<Application (client) ID>&response_type=code&redirect_uri=https%3A%2F%2Fwww.microsoft.com%2F
    詳細については、「テナント2へのアクセス許可」を参照してください。
  3. アプリケーションに Tenant 2 リソースグループへのアクセス権を付与します。Tenant 2 としてサインインし、ギャラリーイメージを持つリソースグループにアプリケーション登録アクセス権を付与します。詳細については、テナント間の要求を認証する を参照してください。
PowerShell コマンドを使用して別のテナントのイメージからカタログを作成するには:
  1. 「」(#update-hosting-connection-custom-properties-with-shared-tenant-ids)。
  2. 「」(#select-an-image-from-a-different-tenant)。

Web Studio を使用して共有テナントを接続に追加する

Web Studio でマシンカタログを作成または更新する際、異なる Azure テナントおよびサブスクリプション (Azure Compute Gallery を介して共有) から共有イメージを選択できます。この機能では、関連するホスト接続の共有テナントおよびサブスクリプション情報を提供する必要があります。
注:
テナント間でイメージ共有を有効にするために、Azure で必要な設定が構成されていることを確認してください。詳細については、「テナント間で画像を共有する」を参照してください。
接続に対して次の手順を実行します。
  1. Web Studio で、左側のペインの を選択します。
  2. 接続を選択し、アクションバーで接続の編集を選択します。
    共有テナント
  3. 「共有テナント」で、以下を実行します。
    • 接続のサブスクリプションに関連付けられているアプリケーション ID とアプリケーションシークレットを指定します。Citrix Virtual Apps and Desktops は、この情報を使用して Azure AD に対して認証を行います。
    • 接続のサブスクリプションと Azure Compute Gallery を共有するテナントとサブスクリプションを追加します。テナントごとに最大8つの共有テナントと8つのサブスクリプションを追加できます。
  4. 完了したら、適用を選択して行った変更を適用し、ウィンドウを開いたままにするか、OKを選択して変更を適用し、ウィンドウを閉じます。

PowerShellを使用したイメージ共有の実装

別のサブスクリプションからイメージを選択する

同じAzureテナント内の別の共有サブスクリプションに属するAzure Compute Galleryのイメージを選択して、PowerShellコマンドを使用してMCSカタログを作成および更新できます。
  1. ホスティングユニットのルートフォルダーに、Citrixはsharedsubscriptionという新しい共有サブスクリプションフォルダーを作成します。
  2. テナント内のすべての共有サブスクリプションを一覧表示します。
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\sharedsubscription.folder"
  3. 1つの共有サブスクリプションを選択し、その共有サブスクリプションのすべての共有リソースグループを一覧表示します。
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription"
  4. リソースグループを選択し、そのリソースグループのすべてのギャラリーを一覧表示します。
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\ xyz.resourcegroup"
  5. ギャラリーを選択し、そのギャラリーのすべてのイメージ定義を一覧表示します。
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\testgallery.gallery"
  6. 1つのイメージ定義を選択し、そのイメージ定義のすべてのイメージバージョンを一覧表示します。
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\sigtestdef.imagedefinition"
  7. 次の要素を使用してMCSカタログを作成および更新します。
    • リソースグループ
    • ギャラリー
    • ギャラリーイメージ定義
    • ギャラリーイメージバージョン
    Remote PowerShell SDK を使用したカタログの作成方法については、<https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/>を参照してください。

共有テナントIDでホスティング接続のカスタムプロパティを更新する

Set-Item を使用して、共有テナントIDとサブスクリプションIDでホスティング接続のカスタムプロパティを更新します。CustomProperties にプロパティ SharedTenants を追加します。Shared Tenants の形式は次のとおりです。
[{"Tenant":"94367291-119e-457c-bc10-25337231f7bd","Subscriptions":["7bb42f40-8d7f-4230-a920-be2781f6d5d9"]},{"Tenant":"50e83564-c4e5-4209-b43d-815c45659564","Subscriptions":["06ab8944-6a88-47ee-a975-43dd491a37d0"]}]
例:
Set-Item -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
<Property xsi:type=`"StringProperty`" Name=`"SubscriptionId`" Value=`"123`" />
<Property xsi:type=`"StringProperty`" Name=`"ManagementEndpoint`" Value=`"https://management.azure.com/`" />
<Property xsi:type=`"StringProperty`" Name=`"AuthenticationAuthority`" Value=`"https://login.microsoftonline.com/`" />
<Property xsi:type=`"StringProperty`" Name=`"StorageSuffix`" Value=`"core.windows.net`" />
<Property xsi:type=`"StringProperty`" Name=`"TenantId`" Value=`"123abc`" />
<Property xsi:type=`"StringProperty`" Name=`"SharedTenants`" Value=`"`[ { 'Tenant':'123abc', 'Subscriptions':['345', '567'] } ]`"` />
</CustomProperties>"
-LiteralPath @("XDHyp:\Connections\aazure") -PassThru -UserName "advc345" -SecurePassword
$psd
注:
複数のテナントを追加できます。各テナントは複数のサブスクリプションを持つことができます。

別のテナントからイメージを選択する

PowerShellコマンドを使用してMCSカタログを作成および更新するために、別のAzureテナントに属するAzure Compute Galleryのイメージを選択できます。
  1. ホスティングユニットのルートフォルダーに、Citrixはsharedsubscriptionという新しい共有サブスクリプションフォルダーを作成します。
  2. すべての共有サブスクリプションを一覧表示します。
    Get-ChildItem XDHyp:\HostingUnits\azres\sharedsubscription.folder
  3. 1つの共有サブスクリプションを選択し、その共有サブスクリプションのすべての共有リソースグループを一覧表示します。
    Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription
  4. リソースグループを選択し、そのリソースグループのすべてのギャラリーを一覧表示します。
    Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\ xyz.resourcegroup
  5. ギャラリーを選択し、そのギャラリーのすべてのイメージ定義を一覧表示します。
    Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\efg.gallery
  6. 1つのイメージ定義を選択し、そのイメージ定義のすべてのイメージバージョンを一覧表示します。
    Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\efg.gallery\hij.imagedefinition
  7. 次の要素を使用してMCSカタログを作成および更新します。
    • リソースグループ
    • ギャラリー
    • ギャラリーイメージ定義
    • ギャラリーイメージバージョン
    Remote PowerShell SDK を使用したカタログの作成方法については、<https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/>を参照してください。

アプリケーションシークレットとシークレットの有効期限を管理する

シークレットの有効期限が切れる前に、接続のアプリケーションシークレットを必ず変更してください。シークレットキーの有効期限が切れる14日前から、Hosting ノードの特定のホスト接続に警告アイコンが表示されます。ただし、シークレットキーの有効期限が切れると、エラーが発生します。

Azure でアプリケーションシークレットを作成する

Azure portal を介して、接続のアプリケーションシークレットを作成できます。
  1. Azure Active Directory を選択します。
  2. Azure AD の App registrations から、アプリケーションを選択します。
  3. 証明書とシークレットに移動します。
  4. > をクリックします。
  5. シークレットの説明を入力し、期間を指定します。完了したら、Add を選択します。
    注:
    クライアントシークレットは後で取得できないため、必ず保存してください。
  6. クライアントシークレットの値と有効期限をコピーします。
  7. Web Studio で、対応する接続を編集し、Application secret および Secret expiration date フィールドの内容をコピーした値に置き換えます。

シークレットの有効期限を変更する

Web Studio を使用して、使用中のアプリケーションシークレットの有効期限を追加または変更できます。
注:
シークレットキーの有効期限が切れる14日前から、Hosting ノードの特定のホスト接続に警告アイコンが表示されます。
  1. 接続とリソースの追加ウィザードで、接続を右クリックし、接続の編集をクリックします。
  2. 接続プロパティページで、シークレットの有効期限をクリックして、使用中のアプリケーションシークレットの有効期限を追加または変更します。

必要なAzure権限

このセクションには、Azure に必要な最小限の一般的な権限が含まれています。

最小限の権限

最小限の権限は、より優れたセキュリティ制御を提供します。ただし、追加の権限を必要とする新機能は、最小限の権限のみを使用しているため失敗します。

ホスト接続の作成

Azure から取得した情報を使用して、新しいホスト接続を追加します。
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/disks/read",

VM の電源管理

マシンインスタンスの電源をオンまたはオフにします。
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",

仮想マシンの作成、更新、または削除

マシンカタログを作成し、マシンを追加、削除、更新し、マシンカタログを削除します。
以下は、マスターイメージがマネージドディスクである場合、またはスナップショットがホスティング接続と同じリージョンにある場合に必要となる最小限の権限のリストです。
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/snapshots/read",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/endGetAccess/action",
"Microsoft.Compute/disks/read",
"Microsoft.Compute/disks/write",
"Microsoft.Compute/disks/delete",
"Microsoft.Compute/disks/beginGetAccess/action",
"Microsoft.Compute/disks/endGetAccess/action",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
以下の機能については、最小限の権限に加えて、以下の追加権限が必要です。
  • マスターイメージがホスティング接続と同じリージョンにあるストレージアカウント内の VHD である場合:
    "Microsoft.Storage/storageAccounts/read",
    "Microsoft.Storage/storageAccounts/listKeys/action",
  • マスターイメージが共有イメージギャラリーのImageVersionである場合:
    "Microsoft.Compute/galleries/read",
    "Microsoft.Compute/galleries/images/read",
    "Microsoft.Compute/galleries/images/versions/read",
  • マスターイメージがマネージドディスクである場合、スナップショットまたはVHDがホスティング接続のリージョンとは異なるリージョンにある場合:
    "Microsoft.Storage/storageAccounts/read",
    "Microsoft.Storage/storageAccounts/listKeys/action",
    "Microsoft.Storage/storageAccounts/write",
    "Microsoft.Storage/storageAccounts/delete",
  • Citrix管理のリソースグループを使用する場合:
    "Microsoft.Resources/subscriptions/resourceGroups/write",
    "Microsoft.Resources/subscriptions/resourceGroups/delete",
  • マスターイメージを共有イメージギャラリーに配置する場合:
    "Microsoft.Compute/galleries/write",
    "Microsoft.Compute/galleries/images/write",
    "Microsoft.Compute/galleries/images/versions/write",
    "Microsoft.Compute/galleries/read",
    "Microsoft.Compute/galleries/images/read",
    "Microsoft.Compute/galleries/images/versions/read",
    "Microsoft.Compute/galleries/delete",
    "Microsoft.Compute/galleries/images/delete",
    "Microsoft.Compute/galleries/images/versions/delete",
  • Azure専用ホストサポートを使用する場合:
    "Microsoft.Compute/hostGroups/read",
    "Microsoft.Compute/hostGroups/write",
    "Microsoft.Compute/hostGroups/hosts/read",
  • カスタマーマネージドキー (CMK) を使用してサーバー側暗号化 (SSE) を使用する場合:
    "Microsoft.Compute/diskEncryptionSets/read",
  • ARM テンプレート (マシンプロファイル) を使用して VM を展開する場合:
    "Microsoft.Resources/deployments/write",
    "Microsoft.Resources/deployments/operationstatuses/read",
    "Microsoft.Resources/deployments/read",
    "Microsoft.Resources/deployments/delete",
  • Azure テンプレート仕様をマシンプロファイルとして使用する場合:
    "Microsoft.Resources/templateSpecs/read",
    "Microsoft.Resources/templateSpecs/versions/read",

アンマネージドディスクを使用したマシンの作成、更新、削除

マスターイメージが VHD であり、管理者が提供するリソースグループを使用する場合に必要となる最小限の権限のリストは次のとおりです。
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Storage/storageAccounts/delete",
"Microsoft.Storage/storageAccounts/listKeys/action",
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action"

一般権限

共同作成者ロールは、すべてのリソースを管理するためのフルアクセス権を持っています。この権限セットは、新機能の取得を妨げるものではありません。
以下の権限セットは、現在の機能セットで必要とされる以上の権限が含まれていますが、今後も最高の互換性を提供します。
"Microsoft.Compute/diskEncryptionSets/read",
"Microsoft.Compute/disks/beginGetAccess/action",
"Microsoft.Compute/disks/delete",
"Microsoft.Compute/disks/endGetAccess/action",
"Microsoft.Compute/disks/read",
"Microsoft.Compute/disks/write",
"Microsoft.Compute/galleries/delete",
"Microsoft.Compute/galleries/images/delete",
"Microsoft.Compute/galleries/images/read",
"Microsoft.Compute/galleries/images/versions/delete",
"Microsoft.Compute/galleries/images/versions/read",
"Microsoft.Compute/galleries/images/versions/write",
"Microsoft.Compute/galleries/images/write",
"Microsoft.Compute/galleries/read",
"Microsoft.Compute/galleries/write",
"Microsoft.Compute/hostGroups/hosts/read",
"Microsoft.Compute/hostGroups/read",
"Microsoft.Compute/hostGroups/write",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/endGetAccess/action",
"Microsoft.Compute/snapshots/read",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Resources/deployments/operationstatuses/read",
"Microsoft.Resources/deployments/read",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Resources/deployments/write",
"Microsoft.Resources/deployments/delete",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/delete",
"Microsoft.Storage/storageAccounts/delete",
"Microsoft.Storage/storageAccounts/listKeys/action",
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Resources/templateSpecs/read",
"Microsoft.Resources/templateSpecs/versions/read",

必要な Azure ホスト接続権限を構成する

ホスト接続に紐付けられた Azure のサービスプリンシパルまたはユーザーアカウントがすべての MCS 操作を実行するために必要な最小限の権限は、ARM テンプレートを使用して簡単に構成できます。この ARM テンプレートは、以下を自動化します。
  • 操作に必要な最小限の権限を持つ Azure ロールの作成。
  • このロールを既存のAzureサービスプリンシパルにサブスクリプションレベルで割り当てる。
このARMテンプレートは、Azure PortalまたはPowerShellコマンドを使用して展開できます。詳細については、「CVAD操作用ARMテンプレート」を参照してください。

次のステップ

詳細情報