クイック スタート: Microsoft Graph リソースを使用して最初の Bicep ファイルを作成してデプロイする
このクイック スタートでは、Microsoft Graph リソースと Azure リソースをそれぞれ表す Microsoft Entra セキュリティ グループとマネージド サービス ID (MSI) を宣言する Bicep ファイルを作成します。 その後、グループの所有者として MSI を追加します。 また、Bicep 拡張機能に備わっているタイプ セーフ、構文の検証、オートコンプリートによって、開発がどのように簡略化されるかについても説明します。 最後に、サインインしているユーザーを使用して Bicep ファイルをデプロイします。
重要
Microsoft Graph Bicep は現在プレビュー段階です。 ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。
前提条件
Azure サブスクリプション: Azure サブスクリプションを所有していない場合は、開始する前に無料アカウントを作成。
Bicep ツールのインストール: Bicep 開発用に環境を設定するには、「 Bicep ツールのインストールを参照してください。
- このクイック スタートでは、作成に Visual Studio (VS) コードを使用します。 そのため、VS Code と Bicep 拡張機能をインストールします。
- デプロイの場合は、Azure CLI または Azure PowerShell をインストールできます。
- また、作成用に Visual Studio と Bicep 拡張機能をインストールすることもできます。この拡張機能は、同じ作成エクスペリエンスを提供します。
- Azure Powershell を使用している場合は、VS Code 拡張機能と Azure CLI または Bicep CLI 用の Bicep バージョン v0.27.1 以降があることを確認します。
Microsoft Entra ロール: セキュリティ グループを作成するためのアクセス許可が必要です。 ユーザーは既定でこのアクセス許可を持っています。 ただし、 管理者はこの既定値をオフにすることができます その場合は、少なくとも User Administrator ロールを割り当てる必要があります。
Microsoft Graph アプリケーション グループを追加する
VS Code を起動し、2 つの新しいファイル ( main.bicep と bicepconfig.json を同じフォルダーに作成します。
次に、Bicep ファイルで Microsoft Graph リソースを宣言できるようにするには、 bicepconfig.jsonを構成して、Bicep プレビュー機能を有効にする必要があります。
{
"experimentalFeaturesEnabled": {
"extensibility": true
}
}
main.bicepに「provider microsoftGraph
」と入力して、Bicep コンパイラに Microsoft Graph 型が含まれていることがわかります。 次の行で、 resource
キーワードを使用してリソースを定義します。 resource exampleGroup
入力し、スペースを追加します。
provider microsoftGraph
resource exampleGroup
シンボリック名の後にスペースを追加すると、リソースの種類の一覧が表示されます。 使用可能なオプションから Microsoft.Graph/Groups を選択できるようになるまで、「group」と入力し続けます。
ヒント
VS Code に Intellisense オプションが表示されない場合は、 Prerequisites で指定されているとおりに Bicep 拡張機能がインストールされていることを確認してください。 この拡張機能をインストールしている場合は、Bicep ファイルを開いた後、Bicep 言語サービスが起動されるまで少し時間を置いてください。 右下隅の通知は、このサービスが起動中であることを示します。 その通知が消えたとき、このサービスが実行されています。
Microsoft.Graph/Groups を選択すると、使用可能な API バージョン (ベータ版または v1.0) が表示されます。 v1.0 が使用できないか、必要なリソース プロパティがベータ版でのみ使用できる場合を除き、常に v1.0 を選択してください。 このクイック スタートでは、v1.0 を使用します。
リソースの種類の一重引用符の後に = とスペースを追加します。 リソースにプロパティを追加するためのオプションが表示されます。 [required-properties] を選択します。
このオプションを選択すると、デプロイに必要なリソースの種類のすべてのプロパティが追加されます。 このオプションを選択すると、グループには次のプロパティがあります。
resource exampleGroup 'Microsoft.Graph/groups@v1.0' = {
displayName:
mailEnabled:
mailNickname:
securityEnabled:
uniqueName:
}
これらのプロパティの値を指定し、 mailEnabled を false
に、 securityEnabled を true
に設定します。 uniqueName は、このグループ リソースの不変のクライアント指定キーを表します。
マネージド ID リソースを追加する
Bicep 拡張機能を備えた VS Code は、マネージド ID を作成するスニペットなどの定義済みのスニペットを提供することで、開発を簡略化します。 main.bicep で、「 man」と入力し、一覧から res-managed-identity を選択し、[Tab] または [Enter] キーを押します。
注: Resource スニペット Microsoft Graph リソースなどの拡張可能なリソースは現在サポートされていません。
これで、Bicep ファイルには次のコードが追加されました。
resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
name: 'name'
location: location
}
不足しているパラメーター定義エラーを修正するには、location
のパラメーター定義を追加します。 プロバイダー定義の下に、 param location string = resourceGroup().location
を追加します。 ここで使用する関数の詳細については、「 resourceGroup()」を参照してください。 マネージド ID の名前を name
から exampleManagedIdentity
に変更します。
マネージド ID をグループ リソースの所有者にする
exampleGroup
リソースで、uniqueName
の下に新しい行を作成し、「ow」と入力します。所有者唯一の一致するプロパティ オプションとして表示され、[Tab] または [Enter] キーを押します。
owners プロパティは配列です。 そのため、[]
を追加し、intellisense を使用してマネージド ID のプリンシパル ID を参照します。mを入力し、managedIdentity (マネージド ID のシンボリック名) を選択し、.を入力してプロパティを選択、別の.を入力し、principalId を選択します。
これで、 main.bicep ファイルは次のようになります。
provider microsoftGraph
param location string = resourceGroup().location
resource exampleGroup 'Microsoft.Graph/groups@v1.0' = {
displayName: 'My example group'
mailEnabled: false
mailNickname: 'my-example-group'
securityEnabled: true
uniqueName: 'myExampleGroup'
owners: [managedIdentity.properties.principalId]
}
resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
name: 'exampleManagedIdentity'
location: location
}
サインインしているユーザーを使用して Bicep ファイルをデプロイする
次の例を使用して、Azure CLI または Azure PowerShell にサインインして、Bicep ファイルをデプロイします。
az group create --name exampleRG --location eastus
az deployment group create --resource-group exampleRG --template-file main.bicep
デプロイが完了すると、デプロイが成功したことを示すメッセージが表示されます。
Note
レプリケーションの遅延により、Microsoft Entra グループの所有者としてマネージド サービス ID (MSI) を追加すると、デプロイが失敗する可能性があります。 少し待ってから、同じ Bicep ファイルをもう一度デプロイします。
リソースをクリーンアップする
Azure リソースが不要になったら、Azure CLI か Azure PowerShell のどちらかのモジュールを使用してクイックスタート リソース グループを削除します。
Note
リソース グループは Azure の概念であり、Microsoft Graph リソースには影響しません。 Microsoft Graph リソースは、Microsoft Graph への追加要求でクリーンアップする必要があります。 このためには、Azure CLI または Azure PowerShell、 Microsoft Graph CLI、または Microsoft Graph PowerShell を使用できます。
次の例では、Azure CLI と Azure PowerShell を使用して、最初に Azure リソースを削除し、次に Microsoft Graph リソースを削除するコマンドを示します。
az group delete --name exampleRG
az rest --method delete --url https://graph.microsoft.com/v1.0/groups(uniqueName=%27myExampleGroup%27)
次のステップ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示