Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nastavení zabezpečení pro operace Azure IoT zahrnuje nastavení správy tajných kódů a spravovanou identitu přiřazenou uživatelem pro cloudová připojení; Například server OPC UA nebo koncové body toku dat.
Tento článek obsahuje pokyny k povolení nastavení zabezpečení, pokud jste to neudělali během počátečního nasazení.
Požadavky
Instance provozu Azure IoT nasazená s testovacím nastavením.
Azure CLI nainstalované na vývojovém počítači. Tento scénář vyžaduje Azure CLI verze 2.53.0 nebo vyšší. Použijte
az --versionke kontrole vaší verze aaz upgradek aktualizaci v případě potřeby. Další informace najdete v tématu Postup instalace Azure CLI.Nejnovější verze rozšíření connectedk8s pro Azure CLI. Pomocí následujícího příkazu přidejte rozšíření nebo ho aktualizujte na nejnovější verzi:
az extension add --upgrade --name connectedk8sRozšíření Azure IoT Operations pro Azure CLI. Pomocí následujícího příkazu přidejte rozšíření nebo ho aktualizujte na nejnovější verzi:
az extension add --upgrade --name azure-iot-ops
Povolení zabezpečeného nastavení clusteru
Pro povolení synchronizace tajemství pro vaši instanci Azure IoT Operations musí být ve vašem clusteru povoleny funkce vystavitele OIDC a federace identit úloh. Tato konfigurace je vyžadována, aby rozšíření úložiště tajemství služby Azure Key Vault synchronizovalo tajemství z Azure Key Vault a ukládalo je na okraji jako tajemství Kubernetes.
U clusterů Azure Kubernetes Service (AKS) je možné funkce vystavitele a identity úloh OIDC povolit pouze při vytváření clusteru. U clusterů v AKS Edge Essentials umožňuje automatizovaný skript tyto funkce ve výchozím nastavení. V případě clusterů AKS v Místním prostředí Azure postupujte podle pokynů k nasazení a konfiguraci identity úloh v clusteru AKS s podporou clusteru Azure Arc a vytvořte nový cluster, pokud ho nemáte s požadovanými funkcemi.
V případě clusterů k3s v Kubernetes můžete aktualizovat existující cluster. Pokud chcete povolit a nakonfigurovat tyto funkce, postupujte následovně:
Aktualizujte klastr k povolení vydavatele OIDC a identity úloh.
az connectedk8s update -n <CLUSTER_NAME> -g <RESOURCE_GROUP> --enable-oidc-issuer --enable-workload-identityPokud jste při vytváření clusteru povolili funkce vystavitele OIDC a identity úloh, nemusíte znovu spouštět předchozí příkaz. Pomocí následujícího příkazu zkontrolujte stav funkcí vystavitele OIDC a identit úloh pro váš cluster:
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query "{ClusterName:name, OIDCIssuerEnabled:oidcIssuerProfile.enabled, WorkloadIdentityEnabled:securityProfile.workloadIdentity.enabled}"Získejte adresu URL vystavitele clusteru.
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query oidcIssuerProfile.issuerUrl --output tsvPoznamenejte si výstup z tohoto příkazu, který použijete v dalších krocích.
Na počítači, na kterém jste nasadili cluster Kubernetes, vytvořte konfigurační soubor k3s:
sudo nano /etc/rancher/k3s/config.yamlPřidejte do
config.yamlsouboru následující obsah a nahraďte<SERVICE_ACCOUNT_ISSUER>zástupný text adresou URL vystavitele clusteru, který jste si poznamenali dříve:kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hUložte soubor a ukončete editor nano.
Restartujte službu k3s:
sudo systemctl restart k3s
Nastavení správy tajných kódů
Správa tajemství pro operace Azure IoT používá rozšíření Secret Store k synchronizaci tajemství ze služby Azure Key Vault a jejich ukládání na okraji sítě jako tajemství Kubernetes. Rozšíření Secret Store vyžaduje spravovanou identitu přiřazenou uživatelem s přístupem ke službě Azure Key Vault, ve které jsou tajné kódy uložené. Další informace najdete v tématu Co jsou spravované identity pro prostředky Azure?
Jak zřídit správu tajemství:
Vytvořte službu Azure Key Vault , která se používá k ukládání tajných kódů, a udělte svému uživatelskému účtu oprávnění ke správě tajných kódů s
Key Vault Secrets Officerrolí.Vytvořte spravovanou identitu přiřazenou uživatelem pro rozšíření Úložiště tajných kódů, která se použije pro přístup k trezoru klíčů.
Použijte příkaz az iot ops secretsync enable k nastavení instance Azure IoT Operations pro synchronizaci tajemství. Tento příkaz:
- Vytvoří přihlašovací údaje pro federovanou identitu pomocí spravované identity přiřazené uživatelem.
- Přidá přiřazení role ke spravované identitě přiřazené uživatelem pro přístup ke službě Azure Key Vault.
- Přidá minimální třídu poskytovatele tajemství přidruženou k instanci Microsoft Azure IoT Operations.
# 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
Nyní, když je nastavení synchronizace tajemství dokončeno, můžete odkázat na Správa tajemství pro nasazení operací Azure IoT a dozvědět se, jak používat tajemství s operacemi Azure IoT.
Nastavení spravované identity přiřazené uživatelem pro cloudová připojení
Některé komponenty operací Azure IoT, jako jsou koncové body toku dat, používají spravovanou identitu přiřazenou uživatelem pro cloudová připojení. Doporučujeme použít samostatnou identitu od identity, kterou jste použili k nastavení správy tajných kódů.
Vytvořte spravovanou identitu přiřazenou uživatelem, která se používá pro cloudová připojení.
Poznámka:
Identitě budete muset udělit oprávnění k jakémukoliv cloudovému prostředku, u kterého použijete spravovanou identitu.
Pomocí příkazu az iot ops identity přiřaďte identitu k instanci Azure IoT Operations. Tento příkaz také vytvoří pověření federované identity pomocí vystavitele OIDC spojeného s vybraným připojeným clusterem a účtu služby Azure IoT Operations.
# 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_IDRestartujte pody registru schématu, aby se použila nová identita.
kubectl delete pods adr-schema-registry-0 adr-schema-registry-1 -n azure-iot-operations
Teď můžete tuto spravovanou identitu použít v koncových bodech toku dat pro cloudová připojení.