次の方法で共有


Azure マネージド ID を使用してラボに環境をデプロイする

ラボの所有者は、マネージド ID を使用してラボに環境をデプロイできます。 この機能は、環境のリソース グループの外部にある Azure リソースが環境に含まれるか、または環境で参照されるシナリオで役立ちます。 これらのリソースには、キー コンテナー、共有イメージ ギャラリー、ネットワークなどがあります。 マネージド ID は、その環境のリソース グループに限定されないサンドボックス環境の作成を可能にします。

既定では、環境を作成すると、ラボは Azure Resource Manager テンプレート (ARM テンプレート) のデプロイ中に、システム割り当て id を作成します。 システム割り当て ID は、ラボ ユーザーの代わりに Azure リソースとサービスにアクセスします。 DevTest Labs では、既定ではラボ環境を初めて作成するときに、システムによって割り当てられる id が作成されます。 ラボによりシステムによって割り当てられた ID が作成される理由について説明します。

ラボの所有者は、ラボのシステム割り当て ID に対して、ラボの外部にある Azure リソースへのアクセスを許可するかどうかを選択できます。 そのシナリオではユーザー割り当て id を使うこともできます。 ラボのシステム割り当て ID は、ラボの有効期間中のみ有効です。 システムによって割り当てられた ID は、ラボを削除すると削除されます。 ID を使用する必要がある環境が複数のラボにある場合は、ユーザー割り当て ID の使用を検討してください。

重要

現在、単一のユーザー割り当て ID がラボごとにサポートされています。

Note

環境を作成するには、Azure Deployment Environments (ADE) を強くお勧めします。 ADE を使用すると、開発者は、プロ​​ジェクトベースのテンプレートを使用してアプリ インフラストラクチャを迅速にデプロイでき、開発チームにとって一貫性のある安全な環境が確保されます。

Azure Deployment Environments の詳細については、Azure Deployment Environments のドキュメントを参照してください。

前提条件

Azure Portal の使用

このセクションでは、ラボの所有者として Azure portal を使用して、ユーザー マネージド ID をラボに追加します。

  1. Azure portal にサインインする

  2. DevTest Labs を見つけます。

  3. ラボの一覧から、目的のラボを選択します。

  4. [構成とポリシー]>[ID (プレビュー)] を選択します。

  5. ユーザー割り当て ID を追加するには、 [ユーザー割り当て済み] を選択します。

  6. [追加] を押します。

  7. 自分で作成した、あるいはアクセス権が与えられている既存ユーザーをドロップダウンから選択します。

    ユーザー マネージド ID の追加

  8. ページ上部にある [保存] を押します。

    保存すると、ラボはすべてのラボ環境をデプロイするときにこの ID を使用します。 一覧から ID を選択することで、Azure の ID リソースにアクセスすることもできます。

ラボの所有者は、環境を展開するために特別なことをする必要はありません。 ラボに追加された id には、環境によるアクセスが必要となる外部リソースへのアクセスが許可されている必要があります。

ラボに割り当てられているユーザー マネージド ID を変更するには、最初にラボに関連付けられている ID を削除してから、ラボに別の ID を追加します。 ラボに関連付けられている ID を削除するには、[...] (省略記号) を選択し、[削除] をクリックします。

API を使用する

  1. ID を作成したら、この ID のリソース ID をメモしておきます。 これは次のサンプルのようになります。

    [https://login.microsoftonline.com/consumers/](/subscriptions/0000000000-0000-0000-0000-00000000000000/resourceGroups/{rg}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName})

  2. ラボ リソースに対して PUT HTTPS メソッドを実行し、ユーザー割り当ての ID を追加するか、ラボのシステムによって割り当てられた ID を有効にします。

    Note

    ユーザー割り当て ID を作成するかどうかに関係なく、ラボでは、ラボ環境が初めて作成されたときに、システムによって割り当てられた ID が自動的に作成されます。 ただし、ユーザーが割り当てた ID がラボ用に既に構成されている場合、DevTest Lab サービスは引き続きその ID を使用してラボ環境をデプロイします。

    
    PUT https://management.azure.com/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Devtestlab/labs/{labname}
    
    {
        "location": "{location}",
        "properties": {
          **lab properties**
         } 
        "identity":{
            "type": "SystemAssigned,UserAssigned",
            "userAssignedIdentities":{
                "/subscriptions/0000000000-0000-0000-0000-00000000000000/resourceGroups/{rg}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}":{}
            }
        } 
    }
    
    

ユーザー割り当て id をラボに追加すると、DevTest Labs サービスは Azure Resource Manager 環境をデプロイするときに id を使います。 たとえば、Shared Image Gallery のイメージにアクセスするために、Resource Manager テンプレートが必要になる場合は、その id が Shared Image Gallery リソースへの必要なアクセス許可があることを確認してください。