Delen via


Beveiligde instellingen inschakelen in Azure IoT-bewerkingen

De beveiligde instellingen voor Azure IoT-bewerkingen omvatten de installatie van geheimenbeheer en een door de gebruiker toegewezen beheerde identiteit voor cloudverbindingen; Bijvoorbeeld een OPC UA-server of gegevensstroomeindpunten.

Dit artikel bevat instructies voor het inschakelen van beveiligde instellingen als u dit niet hebt gedaan tijdens de eerste implementatie.

Vereisten

  • Een Azure IoT Operations-exemplaar dat is geïmplementeerd met testinstellingen. U hebt bijvoorbeeld Testinstellingen gekozen bij het volgen van de instructies in Azure IoT-bewerkingen implementeren in een Kubernetes-cluster met Arc.

  • Azure CLI is geïnstalleerd op uw ontwikkelcomputer. Voor dit scenario is Azure CLI versie 2.64.0 of hoger vereist. Gebruik az --version deze optie om uw versie te controleren en az upgrade zo nodig bij te werken. Zie De Azure CLI installeren voor meer informatie.

  • De Azure IoT Operations-extensie voor Azure CLI. Gebruik de volgende opdracht om de extensie toe te voegen of bij te werken naar de nieuwste versie:

    az extension add --upgrade --name azure-iot-ops
    

Geheimenbeheer instellen

Geheimenbeheer voor Azure IoT Operations maakt gebruik van de extensie Secret Store om de geheimen van een Azure-sleutelkluis te synchroniseren en op te slaan op de rand als Kubernetes-geheimen. De Secret Store-extensie vereist een door de gebruiker toegewezen beheerde identiteit met toegang tot de Azure-sleutelkluis waar geheimen worden opgeslagen. Zie Wat zijn beheerde identiteiten voor Azure-resources? voor meer informatie.

Geheimenbeheer instellen:

  1. Maak een Azure-sleutelkluis die wordt gebruikt voor het opslaan van geheimen en geef uw gebruikersaccount machtigingen voor het beheren van geheimen met de Key Vault Secrets Officer rol.

  2. Maak een door de gebruiker toegewezen beheerde identiteit voor de extensie Secret Store.

  3. Gebruik de opdracht az iot ops secretsync enable om het Azure IoT Operations-exemplaar in te stellen voor geheime synchronisatie. Met deze opdracht gebeurt het volgende:

    • Hiermee maakt u een federatieve identiteitsreferentie met behulp van de door de gebruiker toegewezen beheerde identiteit.
    • Voegt een roltoewijzing toe aan de door de gebruiker toegewezen beheerde identiteit voor toegang tot de Azure-sleutelkluis.
    • Voegt een minimale geheime providerklasse toe die is gekoppeld aan het Azure IoT Operations-exemplaar.
    # Variable block
    AIO_INSTANCE_NAME="<AIO_INSTANCE_NAME>"
    RESOURCE_GROUP="<RESOURCE_GROUP>"
    USER_ASSIGNED_MI_NAME="<USER_ASSIGNED_MI_NAME>"
    KEYVAULT_NAME="<KEYVAULT_NAME>"
    
    #Get the resource ID of the user-assigned managed identity
    USER_ASSIGNED_MI_RESOURCE_ID=$(az identity show --name $USER_ASSIGNED_MI_NAME --resource-group $RESOURCE_GROUP --query id --output tsv)
    
    #Get the resource ID of the key vault
    KEYVAULT_RESOURCE_ID=$(az keyvault show --name $KEYVAULT_NAME --resource-group $RESOURCE_GROUP --query id --output tsv)
    
    #Enable secret synchronization
    az iot ops secretsync enable --instance $AIO_INSTANCE_NAME \
                                 --resource-group $RESOURCE_GROUP \
                                 --mi-user-assigned $USER_ASSIGNED_MI_RESOURCE_ID \
                                 --kv-resource-id $KEYVAULT_RESOURCE_ID
    

Nu het instellen van geheimsynchronisatie is voltooid, kunt u verwijzen naar Geheimen beheren voor uw Azure IoT Operations-implementatie voor informatie over het gebruik van geheimen met Azure IoT Operations.

Een door de gebruiker toegewezen beheerde identiteit instellen voor cloudverbindingen

Sommige Azure IoT Operations-onderdelen, zoals gegevensstroomeindpunten, gebruiken een door de gebruiker toegewezen beheerde identiteit voor cloudverbindingen. U wordt aangeraden een afzonderlijke identiteit te gebruiken van de identiteit die u hebt gebruikt voor het instellen van geheimenbeheer.

  1. Maak een door de gebruiker toegewezen beheerde identiteit die wordt gebruikt voor cloudverbindingen.

    Notitie

    U moet de identiteit machtigen voor de cloudresource waarvoor u de beheerde identiteit gebruikt.

  2. Gebruik de opdracht az iot ops identity assign om de identiteit toe te wijzen aan het Azure IoT Operations-exemplaar. Met deze opdracht maakt u ook een federatieve identiteitsreferentie met behulp van de OIDC-verlener van het aangegeven verbonden cluster en het Azure IoT Operations-serviceaccount.

    # Variable block
    AIO_INSTANCE_NAME="<AIO_INSTANCE_NAME>"
    RESOURCE_GROUP="<RESOURCE_GROUP>"
    USER_ASSIGNED_MI_NAME="<USER_ASSIGNED_MI_NAME FOR CLOUD CONNECTIONS>"
    
    #Get the resource ID of the user-assigned managed identity
    USER_ASSIGNED_MI_RESOURCE_ID=$(az identity show --name $USER_ASSIGNED_MI_NAME --resource-group $RESOURCE_GROUP --query id --output tsv)
    
    #Assign the identity to the Azure IoT Operations instance
    az iot ops identity assign --name $AIO_INSTANCE_NAME \
                               --resource-group $RESOURCE_GROUP \
                               --mi-user-assigned $USER_ASSIGNED_MI_RESOURCE_ID
    

U kunt deze beheerde identiteit nu gebruiken in gegevensstroomeindpunten voor cloudverbindingen.