Správa tajných kódů pomocí služby Azure Key Vault nebo tajných kódů Kubernetes ve službě Azure IoT MQ Preview
Důležité
Azure IoT Operations Preview – Služba Azure Arc je aktuálně ve verzi PREVIEW. Tento software ve verzi Preview byste neměli používat v produkčních prostředích.
Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.
Službu Azure Key Vault můžete použít ke správě tajných kódů pro distribuovaného zprostředkovatele MQTT MQT Ve verzi Azure IoT Preview místo tajných kódů Kubernetes. V tomto článku se dozvíte, jak nastavit službu Key Vault pro svého zprostředkovatele a jak ji používat ke správě tajných kódů.
Požadavky
Instance služby Azure Key Vault s tajným kódem.
Instanční objekt Microsoft Entra s oprávněními
get
list
pro tajné kódy v instanci služby Key Vault. Pokud chcete nakonfigurovat instanční objekt pro oprávnění služby Key Vault, přečtěte si téma Přiřazení zásad přístupu ke službě Key Vault.Tajný kód Kubernetes s přihlašovacími údaji instančního objektu, jako je tento příklad s výchozím
aio-akv-sp
tajným kódem:apiVersion: v1 kind: Secret metadata: name: aio-akv-sp namespace: azure-iot-operations type: Opaque data: clientid: <base64 encoded client id> clientsecret: <base64 encoded client secret>
Zprostředkovatel služby Azure Key Vault pro ovladač CSI úložiště tajných kódů
Použití služby Azure Key Vault ke správě tajných kódů
Pole keyVault
je dostupné všude, kde se používají tajné kódy Kubernetes (secretName
). Následující tabulka popisuje vlastnosti keyVault
pole.
Vlastnost | Požadováno | Popis |
---|---|---|
Trezor | Ano | Určuje službu Azure Key Vault, která obsahuje tajné kódy. |
vault.name | Ano | Určuje název služby Azure Key Vault. Pokud chcete získat název služby Key Vault z webu Azure Portal, přejděte do instance služby Key Vault a zkopírujte název ze stránky Přehled. |
vault.directoryId | Ano | Určuje ID tenanta Microsoft Entra. Pokud chcete získat ID tenanta z webu Azure Portal, přejděte do instance služby Key Vault a zkopírujte ID tenanta ze stránky Přehled. |
vault.credentials.servicePrincipalLocalSecretName | Ano | Určuje název tajného klíče, který obsahuje přihlašovací údaje instančního objektu. |
vaultSecret | Ano, pokud používáte běžné tajné kódy služby Key Vault | Určuje tajný klíč ve službě Azure Key Vault. |
vaultSecret.name | Ano | Určuje název tajného kódu. |
vaultSecret.version | No | Určuje verzi tajného kódu. |
vaultCert | Ano, pokud používáte certifikáty služby Key Vault | Určuje certifikát ve službě Azure Key Vault. |
vaultCert.name | Ano | Určuje název tajného klíče certifikátu. |
vaultCert.version | No | Určuje verzi tajného kódu certifikátu. |
vaultCaChainSecret | Ano, při použití řetězu certifikátů | Určuje řetěz certifikátů ve službě Azure Key Vault. |
vaultCaChainSecret.name | Ano | Určuje název řetězu certifikátů. |
vaultCaChainSecret.version | No | Určuje verzi řetězu certifikátů. |
username | No | Používá se jenom pro konektor Event Hubs Kafka, viz Odesílání a příjem zpráv mezi Azure IoT MQ a Event Hubs nebo Kafka. |
Typ tajného kódu, který používáte, určuje, která z následujících polí můžete použít:
vaultSecret
: Toto pole použijte, když používáte běžný tajný kód. Toto pole můžete například použít ke konfiguraci prostředku BrokerAuthentication s tímto polemusernamePassword
.vaultCert
: Toto pole použijte, pokud používáte tajný klíč typu certifikátu s klientským certifikátem a klíčem. Toto pole můžete například použít k povolení protokolu TLS na BrokerListener.vaultCaChainSecret
: Toto pole použijte, pokud potřebujete předložit úplný řetěz certifikátů se všemi nadbytečnými zprostředkujícími nebo kořenovými certifikáty na vzdálený server. Toto pole můžete například použít ke konfiguraci prostředku MqttBridge Připojení or s tímto polemremoteBrokerConnection
. Pokud chcete toto pole použít, importujte certifikáty X.509 bez privátních klíčů ve formátu PEM jako víceřádkový běžný tajný klíč (ne typ certifikátu) do služby Key Vault. Toto pole by mělo být použito kroměvaultCert
klientského certifikátu a privátního klíče.
Příklady
Pokud například chcete vytvořit zprostředkovatele TLS BrokerListener , který pro tajný certifikát serveru používá Azure Key Vault, použijte následující YAML:
apiVersion: mq.iotoperations.azure.com/v1beta1
kind: BrokerListener
metadata:
name: tls-listener-manual
namespace: azure-iot-operations
spec:
brokerRef: broker
authenticationEnabled: true
authorizationEnabled: false
port: 8883
tls:
keyVault:
vault:
name: my-key-vault
directoryId: <AKV directory ID>
credentials:
servicePrincipalLocalSecretName: aio-akv-sp
vaultCert:
name: my-server-certificate
# version: 939ecc2...
Tento další příklad ukazuje, jak použít Azure Key Vault pro usernamePassword
pole v prostředku BrokerAuthentication:
apiVersion: mq.iotoperations.azure.com/v1beta1
kind: BrokerAuthentication
metadata:
name: my-authentication
namespace: azure-iot-operations
spec:
listenerRef:
- tls-listener-manual
authenicationMethods:
- usernamePassword:
keyVault:
vault:
name: my-key-vault
directoryId: <AKV directory ID>
credentials:
servicePrincipalLocalSecretName: aio-akv-sp
vaultSecret:
name: my-username-password-db
# version: 939ecc2...
Tento příklad ukazuje, jak používat Azure Key Vault pro přihlašovací údaje vzdáleného zprostředkovatele MQTT:
apiVersion: mq.iotoperations.azure.com/v1beta1
kind: MqttBridgeConnector
metadata:
name: my-bridge
namespace: azure-iot-operations
spec:
image:
repository: mcr.microsoft.com/azureiotoperations/mqttbridge
tag: 0.4.0-preview
pullPolicy: IfNotPresent
protocol: v5
bridgeInstances: 1
remoteBrokerConnection:
endpoint: example.broker.endpoint:8883
tls:
tlsEnabled: true
trustedCaCertificateConfigMap: my-ca-certificate
authentication:
x509:
keyVault:
vault:
name: my-key-vault
directoryId: <AKV directory ID>
credentials:
servicePrincipalLocalSecretName: aio-akv-sp
vaultCaChainSecret:
name: my-remote-broker-certificate
# version: 939ecc2...
Související obsah
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro