Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Con questa guida rapida è possibile creare un account di Azure AI Video Indexer (VI) usando Bicep.
Le risorse seguenti vengono installate usando il modello Bicep:
- Account di archiviazione di Azure. Gli account di archiviazione per VI devono essere account di archiviazione Standard per utilizzo generico v2.
- Account VI con una connessione all'account di archiviazione usando un'identità gestita assegnata automaticamente dal sistema
- Assegnazione del ruolo di Collaboratore dati BLOB di archiviazione per l'account VI nell'account di archiviazione
Prerequisiti
- Una sottoscrizione di Azure con l'autorizzazione per creare risorse.
- L'ultima versione dell'interfaccia della riga di comando di Azure.
- Consigliato: strumenti Bicep.
Esaminare il file Bicep
Il codice che accompagna questo avvio rapido può essere trovato negli esempi ufficiali di Azure AI Video Indexer.
Il main.bicep file orchestra l'installazione di due moduli:
- Il modulo VI che distribuisce l'account VI insieme alla risorsa dell'account di Archiviazione di Azure da cui dipende.
- Modulo di autorizzazione dei permessi di ruolo che concede all'identità VI il permesso di proprietario dei dati di Archiviazione Blob di Azure sull'account di archiviazione.
Nota
È una buona pratica separare le risorse di Azure in diversi moduli Bicep. Per una conoscenza completa del funzionamento dei moduli Bicep, vedere Moduli Bicep - Azure Resource Manager.
Creare il file Bicep
Copiare e incollare il contenuto seguente in un file denominato main.bicep nella directory di lavoro.
param location string = resourceGroup().location @description('Storage Account Name') param storageAccountName string = “<add_your_storage_account_name” @description('Video Indexer Account Name') param videoIndexerAccountName string = = “<add_your_videoindexer_account_name>” module videoIndexer 'videoIndexer.bicep' = { name: 'videoIndexer.bicep' params: { location: location storageAccountName: storageAccountName videoIndexerAccountName: videoIndexerAccountName } } // Role Assignment must be on a separate resource module roleAssignment 'role-assignment.bicep' = { name: 'grant-storage-blob-data-contributor' params: { servicePrincipalObjectId: videoIndexer.outputs.servicePrincipalId storageAccountName: storageAccountName } dependsOn: [ videoIndexer ] }Modificare il
main.bicepfile inserendo i parametri mancanti:- storageAccountName : nome dell'account di archiviazione che si vuole connettere all'account Di Azure AI Video Indexer
- videoIndexerAccountName - il nome dell'account VI
Creare un modulo di indicizzazione video AI Bicep
Copiare e incollare il contenuto seguente in un file denominato videoindexer.bicep nella directory di lavoro. Il file distribuisce l'account di archiviazione insieme a un account VI dotato di un'identità assegnata dal sistema.
param location string = resourceGroup().location
@description('Storage Account Name')
param storageAccountName string
@description('Video Indexer Account Name')
param videoIndexerAccountName string
@description('Storage Account Kind')
var storageKind = 'StorageV2'
@description('Storage Account Sku')
var storageSku = 'Standard_LRS'
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: storageAccountName
location: location
kind: storageKind
properties: {
minimumTlsVersion: 'TLS1_2'
}
sku: {
name: storageSku
}
}
resource videoIndexer 'Microsoft.VideoIndexer/accounts@2024-01-01' = {
name: videoIndexerAccountName
location: location
identity: {
type: 'SystemAssigned'
}
properties: {
storageServices: {
resourceId: storageAccount.id
}
}
}
output storageAccountName string = storageAccount.name
output accountName string = videoIndexer.name
output servicePrincipalId string = videoIndexer.identity.principalId
Creare un modulo Bicep per l'assegnazione di ruolo
Copiare e incollare il contenuto seguente in un file denominato role-assignment.bicep nella directory di lavoro. Il modulo concede all'identità assegnata dal sistema il ruolo di Collaboratore dati blob di archiviazione sull'account di archiviazione VI.
@secure()
param servicePrincipalObjectId string
param storageAccountName string
@description('Storage Blob Data Contributor Role Id')
var storageBlobDataContributorRoleId = 'ba92f5b4-2d11-453d-a403-e96b0029c9fe'
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' existing= {
name: storageAccountName
}
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2020-04-01-preview' = {
name: guid(storageAccount.id, servicePrincipalObjectId, 'Storage Blob Data Contributor')
scope: storageAccount
properties: {
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', storageBlobDataContributorRoleId)
principalId: servicePrincipalObjectId
principalType: 'ServicePrincipal'
}
}
Distribuire il file Bicep
Apri un terminale e assicurati di aver eseguito l'accesso alla sottoscrizione di Azure.
az loginaz account set --subscription <your-subscription-name>Crea un gruppo di risorse.
az group create -n <your-resource-group-name> -l eastusDistribuire il modello nel gruppo di risorse.
az deployment group create --resource-group <your-resource-group-name> --template-file .\main.template.jsonAttendere il completamento della distribuzione e controllare la risorsa creata in portale di Azure.
Articoli correlati
Se non si ha familiarità con Azure AI Video Indexer, vedere:
- Documentazione di Azure AI Video Indexer
- Portale per sviluppatori di Video Indexer per intelligenza artificiale di Azure
- Esempi ufficiali di Azure AI Video Indexer
Se sei nuovo alla distribuzione di Bicep, vedi: