Поделиться через


Краткое руководство. Создание и развертывание первого файла Bicep с помощью ресурсов Microsoft Graph

В этом кратком руководстве вы создадите файл Bicep, который объявляет группу безопасности Microsoft Entra и управляемое удостоверение службы (MSI), представляющую ресурс Microsoft Graph и ресурс Azure соответственно. Затем вы добавите MSI в качестве владельца группы. Вы также узнаете, как расширение Bicep упрощает разработку, предоставляя безопасность типов, проверку синтаксиса и автозавершение. Наконец, вы развернете файл Bicep с помощью пользователя, вошедшего в систему.

Внимание

Microsoft Graph Bicep в настоящее время находится в предварительной версии. Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.

Необходимые компоненты

Добавление группы приложений Microsoft Graph

Запустите VS Code и создайте два новых файла, main.bicep и bicepconfig.json в одной папке.

Затем, чтобы объявить ресурсы Microsoft Graph в файле Bicep, необходимо включить предварительную версию Bicep, настроив bicepconfig.json:

{
    "experimentalFeaturesEnabled": {
        "extensibility": true
    }
}

В main.bicep введите provider microsoftGraph, чтобы сообщить компилятору Bicep, что вы включаете типы Microsoft Graph. В следующей строке определите ресурс с помощью resource ключевое слово. Введите resource exampleGroupи добавьте пробел.

provider microsoftGraph

resource exampleGroup

При добавлении пробела после символического имени отобразится список типов ресурсов. Продолжайте вводить группу, пока не сможете выбрать Microsoft.Graph/Groups из доступных параметров.

Снимок экрана: выбор групп Microsoft Graph для типа ресурса.

Совет

Если параметры intellisense не отображаются в VS Code, убедитесь, что вы установили расширение Bicep, как указано в предварительных требованиях. Если расширение установлено, подождите некоторое время после открытия файла Bicep. При запуске службы появляется уведомление в правом нижнем углу. Когда оно исчезнет, расширение должно работать.

Выбрав Microsoft.Graph/Groups, вы получите доступные версии API — бета-версию или версию 1.0. Всегда выбирайте версию 1.0, если она недоступна или необходимые свойства ресурсов доступны только в бета-версии. В этом кратком руководстве используйте версию 1.0.

Снимок экрана: выбор версии API для типа ресурса.

После одинарной кавычки, указанной для типа ресурса, добавьте = и пробел. Отобразятся параметры для добавления свойств в ресурс. Выберите обязательные свойства.

Снимок экрана: добавление обязательных свойств.

Этот параметр добавляет все свойства для типа ресурса, требуемые для его развертывания. После выбора этого параметра группа имеет следующие свойства:

resource exampleGroup 'Microsoft.Graph/groups@v1.0' = {
  displayName: 
  mailEnabled: 
  mailNickname: 
  securityEnabled: 
  uniqueName: 
}

Укажите значения этих свойств, задав mailEnabled и securityEnabledtrue.false uniqueName представляет неизменяемый ключ, предоставленный клиентом для этого ресурса группы.

Добавление ресурса управляемого удостоверения

VS Code с расширением Bicep упрощает разработку, предоставляя предопределенные фрагменты кода, например фрагмент кода, который создает управляемое удостоверение. В main.bicep введите man, а затем выберите res-managed-identity из списка, а затем нажмите клавишу [TAB] или [ВВОД].

Снимок экрана: добавление фрагмента ресурса.

Примечание.Фрагменты ресурсов для расширяемых ресурсов, таких как ресурсы Microsoft Graph, в настоящее время не поддерживаются.

Файл Bicep теперь содержит следующий код.

resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
  name: 'name'
  location: location
}

Чтобы устранить ошибку определения отсутствующих параметров, добавьте определение параметра для location. В определении поставщика добавьте param location string = resourceGroup().location. Дополнительные сведения о функции, используемой здесь, см . в разделе resourceGroup(). Измените имя управляемого удостоверения на nameexampleManagedIdentity.

Создание управляемого удостоверения владельцем ресурса группы

В ресурсе exampleGroup создайте новую строку в uniqueNameразделе , введите ow, в котором отображаются владельцы как единственный соответствующий параметр свойства, а затем нажмите клавишу [TAB] или [ВВОД].

Снимок экрана: добавление свойства владельцев.

Свойство владельцев представляет собой массив, поэтому добавьте [] и теперь сослаться на идентификатор субъекта управляемого удостоверения с помощью intellisense, введя m и выбрав managedIdentity (символическое имя для управляемого удостоверения), введя идентификатор . и выбрав свойства, введядругой . и выбрав субъектId.

Снимок экрана: ссылка на управляемое удостоверение.

Теперь файл 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 с помощью вошедшего пользователя

Разверните Bicep-файл, выполнив вход в Azure CLI или Azure PowerShell, используя следующие примеры.

az group create --name exampleRG --location eastus

az deployment group create --resource-group exampleRG --template-file main.bicep

После завершения развертывания должно отобразиться сообщение о том, что развертывание успешно выполнено.

Примечание.

Из-за задержек реплика добавление управляемого удостоверения службы (MSI) в качестве владельца группы Microsoft Entra может привести к сбою развертывания. Подождите немного, а затем снова разверните тот же файл Bicep.

Очистка ресурсов

Если ресурсы Azure больше не нужны, используйте Azure CLI или модуль Azure PowerShell, чтобы удалить группу ресурсов, созданную для краткого руководства.

Примечание.

Группы ресурсов — это концепция Azure и не влияют на ресурсы Microsoft Graph. Ресурсы Microsoft Graph необходимо очистить с дополнительным запросом к Microsoft Graph. Для этого можно использовать Azure CLI или Azure PowerShell, Microsoft Graph CLI или Microsoft Graph PowerShell.

В следующих примерах показаны команды для удаления ресурса Azure, а затем ресурса Microsoft Graph с помощью Azure CLI и Azure PowerShell.

az group delete --name exampleRG

az rest --method delete --url https://graph.microsoft.com/v1.0/groups(uniqueName=%27myExampleGroup%27)

Следующий шаг