Eseménykézbesítés felügyelt identitással

Ez a cikk azt ismerteti, hogyan használható felügyeltszolgáltatás-identitás egy Azure Event Grid-rendszertémakörhöz, egyéni témakörhöz vagy tartományhoz. Segítségével eseményeket továbbíthat támogatott célhelyekre, például Service Bus-üzenetsorokra és témakörökre, eseményközpontokra és tárfiókokra.

Előfeltételek

  1. Rendszer által hozzárendelt identitás vagy felhasználó által hozzárendelt identitás hozzárendelése rendszertémakörhöz, egyéni témakörhöz vagy tartományhoz.

  2. Adja hozzá az identitást egy megfelelő szerepkörhöz (például Service Bus-adatküldőhöz) a célhelyen (például egy Service Bus-üzenetsoron). Részletes lépésekért lásd : Identitás hozzáadása az Azure-szerepkörökhöz a célhelyeken

    Megjegyzés:

    Jelenleg nem lehet privát végpontok használatával eseményeket továbbítani. További információkért tekintse meg a cikk végén található Privát végpontok szakaszt.

Identitást használó esemény-előfizetések létrehozása

Miután egyéni Event Grid-témakört vagy rendszertémakört vagy tartományt kezelt identitással, és hozzáadta az identitást a célhely megfelelő szerepköréhez, készen áll az identitást használó előfizetések létrehozására.

Use the Azure portal

Esemény-előfizetés létrehozásakor megjelenik egy lehetőség, amely lehetővé teszi egy rendszer által hozzárendelt identitás vagy felhasználó által hozzárendelt identitás használatát egy végponthoz az ENDPOINT DETAILS szakaszban.

Íme egy példa a rendszer által hozzárendelt identitás engedélyezésére, miközben egy Service Bus-üzenetsort tartalmazó esemény-előfizetést hoz létre célként.

Screenshot that shows how to enable an identity when creating an event subscription for a Service Bus queue.

Azt is engedélyezheti, hogy a rendszer által hozzárendelt identitást használjon a további funkciók lapon a holtbetűs betűzéshez.

Screenshot that shows how to enable a system-assigned identity for dead-lettering.

A felügyelt identitásokat a létrehozásuk után engedélyezheti egy esemény-előfizetésen. Az esemény-előfizetés Esemény-előfizetés lapján váltson a További funkciók lapra a beállítás megtekintéséhez. Ezen a lapon is engedélyezheti az identitást a holtbetűkhöz.

Screenshot that shows how to enable a system-assigned identity on an existing event subscription.

Ha engedélyezte a felhasználó által hozzárendelt identitásokat a témakörhöz, a felhasználó által hozzárendelt identitás beállítás engedélyezve lesz a Manged Identity Type legördülő listájában. Ha a felhasználó által hozzárendelt felügyelt identitástípust választja, kiválaszthatja azt a felhasználó által hozzárendelt identitást, amelyet az események továbbításához használni szeretne.

Screenshot that shows how to enable a user-assigned identity on an event subscription.

Az Azure CLI – Service Bus-üzenetsor használata

Ebben a szakaszban megtudhatja, hogyan használhatja az Azure CLI-t egy rendszer által hozzárendelt identitás használatára az események Service Bus-üzenetsorba való továbbításához. Az identitásnak az Azure Service Bus adatküldő szerepkör tagjának kell lennie. Emellett a storage blobadatok közreműködői szerepkörének is tagja kell lennie azon a tárfiókon, amelyet a holt betűs íráshoz használnak.

Define variables

Először adja meg a parancssori felület parancsban használandó alábbi változók értékeit.

subid="<AZURE SUBSCRIPTION ID>"
rg = "<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname = "<EVENT GRID TOPIC NAME>"

# get the service bus queue resource id
queueid=$(az servicebus queue show --namespace-name <SERVICE BUS NAMESPACE NAME> --name <QUEUE NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)
sb_esname = "<Specify a name for the event subscription>" 

Esemény-előfizetés létrehozása felügyelt identitás használatával kézbesítéshez

Ez a mintaparancs létrehoz egy esemény-előfizetést egy Egyéni Event Grid-témakörhöz, amelynek végponttípusa Service Bus-üzenetsor.

az eventgrid event-subscription create  
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname
    --delivery-identity-endpoint-type servicebusqueue  
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $queueid
    -n $sb_esname 

Esemény-előfizetés létrehozása felügyelt identitással a kézbesítéshez és a kézbesíthetetlen levelekhez

Ez a mintaparancs létrehoz egy esemény-előfizetést egy Egyéni Event Grid-témakörhöz, amelynek végponttípusa Service Bus-üzenetsor. Azt is meghatározza, hogy a rendszer által felügyelt identitást használjuk a holt betűzéshez.

storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"

az eventgrid event-subscription create  
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname 
    --delivery-identity-endpoint-type servicebusqueue
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $queueid
    --deadletter-identity-endpoint $deadletterendpoint 
    --deadletter-identity systemassigned 
    -n $sb_esnameq 

Az Azure CLI – Event Hubs használata

Ebben a szakaszban megtudhatja, hogyan használhatja az Azure CLI-t egy rendszer által hozzárendelt identitás használatára az események eseményközpontba történő továbbításához. Az identitásnak az Azure Event Hubs Adatküldő szerepkör tagjának kell lennie. Emellett a storage blobadatok közreműködői szerepkörének is tagja kell lennie azon a tárfiókon, amelyet a holt betűs íráshoz használnak.

Define variables

subid="<AZURE SUBSCRIPTION ID>"
rg = "<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname = "<EVENT GRID CUSTOM TOPIC NAME>"

hubid=$(az eventhubs eventhub show --name <EVENT HUB NAME> --namespace-name <NAMESPACE NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)
eh_esname = "<SPECIFY EVENT SUBSCRIPTION NAME>" 

Esemény-előfizetés létrehozása felügyelt identitás használatával kézbesítéshez

Ez a mintaparancs létrehoz egy esemény-előfizetést egy egyéni Event Grid-témakörhöz, amelynek végponttípusa Event Hubs.

az eventgrid event-subscription create  
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname 
    --delivery-identity-endpoint-type eventhub 
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $hubid
    -n $sbq_esname 

Esemény-előfizetés létrehozása felügyelt identitás használatával a kézbesítéshez és a holtleíróhoz

Ez a mintaparancs létrehoz egy esemény-előfizetést egy egyéni Event Grid-témakörhöz, amelynek végponttípusa Event Hubs. Azt is meghatározza, hogy a rendszer által felügyelt identitást használjuk a holt betűzéshez.

storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"

az eventgrid event-subscription create
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname 
    --delivery-identity-endpoint-type servicebusqueue  
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $hubid
    --deadletter-identity-endpoint $eh_deadletterendpoint
    --deadletter-identity systemassigned 
    -n $eh_esname 

Az Azure CLI használata – Azure Storage-üzenetsor

Ebben a szakaszban megtudhatja, hogyan használhatja az Azure CLI-t egy rendszer által hozzárendelt identitás használatára az események Azure Storage-üzenetsorba való továbbításához. Az identitásnak tagja kell lennie a Társor adatüzenet-küldő szerepkörének a tárfiókban. Emellett a storage blobadatok közreműködői szerepkörének is tagja kell lennie azon a tárfiókon, amelyet a holt betűs íráshoz használnak.

Define variables

subid="<AZURE SUBSCRIPTION ID>"
rg = "<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname = "<EVENT GRID CUSTOM TOPIC NAME>"

# get the storage account resource id
storageid=$(az storage account show --name <STORAGE ACCOUNT NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)

# build the resource id for the queue
queueid="$storageid/queueservices/default/queues/<QUEUE NAME>" 

sa_esname = "<SPECIFY EVENT SUBSCRIPTION NAME>" 

Esemény-előfizetés létrehozása felügyelt identitás használatával kézbesítéshez

az eventgrid event-subscription create 
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname 
    --delivery-identity-endpoint-type storagequeue  
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $queueid
    -n $sa_esname 

Esemény-előfizetés létrehozása felügyelt identitás használatával a kézbesítéshez és a holtleíróhoz

storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"

az eventgrid event-subscription create  
    --source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname 
    --delivery-identity-endpoint-type storagequeue  
    --delivery-identity systemassigned 
    --delivery-identity-endpoint $queueid
    --deadletter-identity-endpoint $deadletterendpoint 
    --deadletter-identity systemassigned 
    -n $sa_esname 

Private endpoints

Jelenleg nem lehet privát végpontok használatával eseményeket továbbítani. Ez azt jelent, hogy nem támogatott, ha szigorú hálózati elkülönítési követelmények vannak, amelyek esetén a kézbesített események forgalma nem hagyhatja el a privát IP-területet.

Ha azonban a követelmények biztonságos módot keresnek arra, hogy az eseményeket titkosított csatornával és a küldő ismert identitásával (ebben az esetben az Event Gridben) nyilvános IP-címtér használatával küldjék el, akkor az eseményeket az Event Hubsba, a Service Busba vagy az Azure Storage szolgáltatásba is továbbíthatja egy Egyéni Azure Event Grid-témakör vagy egy felügyelt identitással rendelkező tartomány használatával, ahogyan az ebben a cikkben látható. Ezután az Azure Functionsben konfigurált privát hivatkozást vagy a virtuális hálózaton üzembe helyezett webhookot használhatja az események lekéréséhez. Tekintse meg az oktatóanyagot: Csatlakozás privát végpontokra az Azure Functions használatával.

Ebben a konfigurációban a forgalom az Event Gridről az Event Hubsba, a Service Busba vagy az Azure Storage-ba irányuló nyilvános IP-címen/interneten halad át, de a csatorna titkosítható, és az Event Grid felügyelt identitása használható. Ha az Azure Functionst vagy a virtuális hálózaton üzembe helyezett webhookot konfigurálja event Hubs, Service Bus vagy Azure Storage privát kapcsolaton keresztüli használatára, a forgalom ezen szakasza nyilvánvalóan az Azure-ban marad.

További lépések

A felügyelt identitásokról további információt az Azure-erőforrások felügyelt identitásai című témakörben talál.