Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure IoT İşlemleri için güvenli ayarlar arasında gizli dizi yönetimi kurulumu ve bulut bağlantıları için kullanıcı tarafından atanan yönetilen kimlik (örneğin, bir OPC UA sunucusu veya veri akışı uç noktaları) bulunur.
Bu makalede, ilk dağıtımınız sırasında yapmadıysanız güvenli ayarları etkinleştirme yönergeleri sağlanır.
Prerequisites
- Test ayarlarıyla dağıtılan bir Azure IoT İşlemleri örneği.
Geliştirme makinenizde yüklü Azure CLI. Kullanılabilir Azure CLI uzantıları sayfasında, azure-iot-ops uzantısını kullanmak için gereken en düşük sürüme bakın. Sürümünüzü denetlemek ve
az --versiongerekirse güncelleştirmek için kullanınaz upgrade. Daha fazla bilgi için bkz. Azure CLI yükleme.Azure CLI için Azure IoT İşlemleri uzantısı. Uzantıyı eklemek veya en son sürüme güncelleştirmek için aşağıdaki komutu kullanın:
az extension add --upgrade --name azure-iot-ops
Azure CLI için connectedk8s uzantısının en son sürümü. Uzantıyı eklemek veya en son sürüme güncelleştirmek için aşağıdaki komutu kullanın:
az extension add --upgrade --name connectedk8s
Güvenli ayarlar için kümeyi etkinleştirme
Azure IoT İşlemleri örneğinizde gizli değer senkronizasyonunu etkinleştirmek için OIDC sağlayıcısı ve iş yükü kimlik federasyonu özellikleri kümenizde etkinleştirilmelidir. Bu yapılandırma, Azure Key Vault Gizli Dizi Deposu uzantısının bir Azure Key Vault'tan gizli dizileri eşitlemesi ve uçta Kubernetes gizli dizileri olarak depolaması için gereklidir.
Azure Kubernetes Service (AKS) kümeleri için, küme oluşturduğunuzda veya mevcut bir kümede OIDC issuer ve iş yükü kimliği özelliklerini etkinleştirebilirsiniz. Daha fazla bilgi için, AKS kümesinde Microsoft Entra İş Yükü Kimliği'yi dağıt ve yapılandırma bölümüne bakınız. AKS Uç Temel Bileşenleri'ta kümeler için otomatik betik bu özellikleri varsayılan olarak etkinleştirir. Azure Yerel'daki AKS kümeleri için, gerekli özelliklere sahip bir kümeniz yoksa, yeni bir küme oluşturmak amacıyla Azure Arc ile etkinleştirilmiş bir AKS kümesinde iş yükü kimliğini dağıtma ve yapılandırma adımlarını izleyin.
Kubernetes'te k3s kümeleri için mevcut bir kümeyi güncelleştirebilirsiniz. Bu özellikleri etkinleştirmek ve yapılandırmak için aşağıdaki adımları kullanın:
OIDC vereni ve iş yükü kimliğini etkinleştirmek için kümeyi güncelleştirin.
az connectedk8s update -n <CLUSTER_NAME> -g <RESOURCE_GROUP> --enable-oidc-issuer --enable-workload-identityKümeyi oluştururken OIDC veren ve iş yükü kimliği özelliklerini etkinleştirdiyseniz, önceki komutu yeniden çalıştırmanız gerekmez. Kümenizin OIDC veren ve iş yükü kimliği özelliklerinin durumunu denetlemek için aşağıdaki komutu kullanın:
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query "{ClusterName:name, OIDCIssuerEnabled:oidcIssuerProfile.enabled, WorkloadIdentityEnabled:securityProfile.workloadIdentity.enabled}"Kümenin verici URL'sini alın.
az connectedk8s show -g <RESOURCE_GROUP> -n <CLUSTER_NAME> --query oidcIssuerProfile.issuerUrl --output tsvSonraki adımlarda kullanmak üzere bu komutun çıkışını not edin.
Kubernetes kümenizi dağıttığınız makinede k3s yapılandırma dosyasını oluşturun:
sudo nano /etc/rancher/k3s/config.yamlAşağıdaki içeriği
config.yamldosyasına ekleyin ve<SERVICE_ACCOUNT_ISSUER>yer tutucusunu önceden not ettiğiniz küme sağlayıcı URL'si ile değiştirin.kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hDosyayı kaydedin ve nano düzenleyiciden çıkın.
k3s hizmetini yeniden başlatın:
sudo systemctl restart k3s
Gizli bilgi yönetimini ayarlama
Azure IoT İşlemleri için gizli bilgi yönetimi, gizli bilgileri bir Azure Key Vault'tan senkronize etmek ve kenar biriminde Kubernetes gizli bilgileri olarak depolamak için Secret Store uzantısını kullanır. Gizli Depo uzantısı, sırların depolandığı Azure Key Vault erişimine sahip, kullanıcı tarafından atanmış bir yönetilen kimlik gerektirir. Daha fazla bilgi edinmek için bkz. Azure kaynakları için yönetilen kimlikler nelerdir?
Gizlilik yönetimini ayarlamak için:
Gizli bilgilerin depolanması için bir Azure Key Vault oluşturun ve
Key Vault Secrets OfficerGizli Dizi Deposu uzantısının anahtar kasasına erişmesi için kullanıcı tarafından atanan bir yönetilen kimlik oluşturun.
Azure IoT İşlemleri örneğini gizli bilgilerin senkronizasyonu için ayarlamak üzere az iot ops secretsync enable komutunu kullanın. Bu komut:
- Kullanıcı tarafından atanan yönetilen kimliği kullanarak bir federe kimlik bilgisi oluşturur.
- Azure Key Vault'a erişim için kullanıcı tarafından atanan yönetilen kimliğe rol ataması ekler.
- Azure IoT Operasyonları örneğiyle ilişkili minimum gizli sağlayıcı sınıfını ekler.
# 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
Gizli eşitleme kurulumu tamamlandıktan sonra Azure IoT İşlemleri'da gizli bilgileri nasıl kullanacağınızı öğrenmek için Azure IoT İşlemleri dağıtımınız için gizli bilgileri yönetme konusuna bakabilirsiniz.
Bulut bağlantıları için kullanıcı tarafından atanan yönetilen kimliği ayarlama
Veri akışı uç noktaları gibi bazı Azure IoT İşlemleri bileşenleri, bulut bağlantıları için kullanıcı tarafından atanan yönetilen kimliği kullanır. Gizli yönetimini ayarlamak için kullandığınız kimlikten ayrı bir kimlik kullanmanızı öneririz.
Bulut bağlantıları için kullanılan kullanıcı tarafından atanan bir yönetilen kimlik oluşturun.
Note
Yönetilen kimliği kullanacağınız bulut kaynağı için kimlik izni vermeniz gerekir.
kimliği Azure IoT İşlemleri örneğine atamak için az iot ops identity assign komutunu kullanın. Bu komut ayrıca, belirtilen bağlı kümenin OIDC sağlayıcısını ve Azure IoT İşlemleri hizmet hesabını kullanarak bir federasyon kimlik bilgisi oluşturur.
Important
Bu komutun varsayılan sürümü, veri akışları için bir kimlik atar. Veri akışı grafiklerini kullanmayı planlıyorsanız parametresini
--usagedeğerinewasm-graphekleyin.# 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_IDYeni kimliği uygulamak için şema kayıt defteri podlarını yeniden başlatın.
kubectl delete pods adr-schema-registry-0 adr-schema-registry-1 -n azure-iot-operations
Artık bulut bağlantıları için veri akışı uç noktalarındaki bu yönetilen kimliği kullanabilirsiniz.
Azure Örneği Meta Veri Hizmetine pod erişimini engelleme
AKS'de güvenli ayarlarla Azure IoT İşlemleri dağıttığınızda Microsoft, Azure Örnek Meta Veri Hizmeti uç noktasına pod erişimini engellemenizi önerir. Bu özelliği etkinleştirmeyi öğrenmek için bkz. Azure Örnek Meta Veri Hizmeti (IMDS) uç noktasına pod erişimini engelleme.