Azure IoT 작업은 클라우드에서 관리 자격 증명 모음 솔루션으로 Azure Key Vault를 사용하고, Kubernetes용 Azure Key Vault 비밀 저장소 확장을 통해 클라우드에서 비밀을 동기화하여 Kubernetes 비밀로 에지에 저장합니다. 커넥터 및 데이터 흐름과 같은 에지 리소스는 외부 시스템에 연결할 때 인증에 이러한 비밀을 사용할 수 있습니다.
필수 구성 요소
보안 설정으로 배포된 Azure IoT 작업 인스턴스. 테스트 설정으로 Azure IoT 작업을 배포한 후 이제 비밀을 사용하려면 먼저 보안 설정을 사용하도록 설정해야 합니다.
Azure Key Vault 권한 구성
작업 환경을 활용하여 키 자격 증명 모음에 비밀을 생성하려면 Azure의 리소스 수준에서 Key Vault Secrets Officer 권한이 필요합니다.
테스트 또는 개발 환경에서 다음 단계를 사용하여 Azure IoT Operations 인스턴스 및 Azure Key Vault 인스턴스가 배포되는 리소스 그룹 수준에서 사용자에게 Key Vault 비밀 책임자 역할을 할당합니다.
리소스 그룹의 이름을 찾으려면 작업 환경 웹 UI로 이동하여 인스턴스 페이지로 이동하여 Azure IoT Operations 인스턴스를 찾습니다. 리소스 그룹 이름이 리소스 그룹 필드에 표시됩니다.
Azure Portal로 이동한 다음, Azure IoT Operations 인스턴스 및 Azure Key Vault 인스턴스가 배포되는 리소스 그룹으로 이동합니다.
팁 (조언)
Azure Portal 맨 위에 있는 검색 상자를 사용하여 이름에 입력하여 리소스 그룹을 빠르게 찾을 수 있습니다.
왼쪽 메뉴에서 액세스 제어(IAM) 를 선택합니다. 그런 다음, +역할 할당 추가>를 선택합니다.
역할 탭의 역할 목록에서 Key Vault 비밀 책임자를 선택한 다음, 다음을 선택합니다.
구성원 탭에서 사용자, 그룹 또는 서비스 주체를 선택하고, 구성원을 선택하고, Key Vault 비밀 책임자 역할을 할당할 사용자를 선택한 다음, 다음을 선택합니다.
검토 + 할당을 선택하여 역할 할당을 완료합니다.
프로덕션 환경에서 모범 사례를 따라 Azure IoT Operations에서 사용하는 Azure Key Vault를 보호합니다. 자세한 내용은 Azure Key Vault 사용에 대한 모범 사례를 참조하세요.
비밀 추가 및 사용
Azure IoT 작업을 위한 비밀 관리에서는 비밀 저장소 확장을 사용하여 Azure Key Vault의 비밀을 동기화하고 이를 Kubernetes 비밀로 에지에 저장합니다. 배포 중에 보안 설정을 사용하도록 설정하면 비밀 관리를 위해 Azure Key Vault를 선택한 것입니다. Azure IoT 작업에서 사용되는 모든 비밀은 이 Key Vault에 저장됩니다.
참고
Azure IoT 작업 인스턴스는 하나의 Azure Key Vault와만 작동하며 인스턴스당 여러 개의 키 자격 증명 모음은 지원되지 않습니다.
비밀 관리 설정 단계가 완료되면 Azure Key Vault에 비밀 추가를 시작하고 작업 환경 웹 UI를 사용하여 디바이스 또는 데이터 흐름 엔드포인트에서 사용할 Kubernetes 클러스터에 동기화할 수 있습니다.
비밀은 인증을 위해 디바이스 및 데이터 흐름 엔드포인트에서 사용됩니다. 이 섹션에서는 디바이스를 예로 사용합니다. 동일한 프로세스를 데이터 흐름 엔드포인트에 적용할 수 있습니다. Azure Key Vault에서 비밀을 직접 만들고 클러스터에 자동으로 동기화하거나 키 자격 증명 모음의 기존 비밀 참조를 사용하는 옵션이 있습니다.
작업 환경 웹 UI의 디바이스 페이지로 이동하세요.
새 비밀 참조를 추가하려면 새 디바이스를 만들 때 참조 추가 를 선택하세요.
새 비밀 만들기: Azure Key Vault에서 비밀 참조를 만들고 비밀 저장소 확장을 사용하여 비밀을 클러스터에 자동으로 동기화합니다. 이 시나리오에 필요한 비밀을 키 자격 증명 모음에 미리 만들지 않은 경우 이 옵션을 사용합니다.
Azure Key Vault에서 추가: 이전에 동기화되지 않은 경우 키 자격 증명 모음의 기존 비밀을 클러스터까지 동기화합니다. 이 옵션을 선택하면 선택한 키 자격 증명 모음의 비밀 참조 목록이 표시됩니다. 키 자격 증명 모음에 미리 비밀을 만든 경우 이 옵션을 사용합니다. 최신 버전의 비밀만 클러스터에 동기화됩니다.
디바이스나 데이터 흐름 엔드포인트에 사용자 이름과 암호 참조를 추가하면 동기화된 비밀에 이름을 지정해야 합니다. 비밀 참조는 이 지정된 이름을 하나의 비밀 동기화 리소스로 사용하여 클러스터에 저장됩니다. 아래 스크린샷의 예제에서 사용자 이름 및 암호 참조는 클러스터에 edp1secrets로 저장됩니다.
동기화된 비밀 관리
이 섹션에서는 디바이스를 예로 사용합니다. 데이터 흐름 엔드포인트에 동일한 프로세스를 적용할 수 있습니다.
작업 환경 웹 UI의 디바이스 페이지로 이동하세요.
비밀 목록을 보려면 인증서 및 비밀 관리를 선택한 다음 비밀을 선택합니다.
비밀 페이지를 사용하여 디바이스 및 데이터 흐름 엔드포인트에서 동기화된 비밀을 볼 수 있습니다. 비밀 페이지는 현재 보고 있는 리소스의 네트워크 에지에서 동기화된 모든 비밀의 목록을 보여줍니다. 동기화된 비밀은 사용하는 리소스에 따라 하나 또는 여러 개의 비밀 참조를 나타냅니다. 동기화된 비밀에 적용되는 모든 작업은 동기화된 비밀에 포함된 모든 비밀 참조에 적용됩니다.
동기화된 비밀은 비밀 페이지에서도 삭제할 수 있습니다. 동기화된 비밀을 삭제하면 Kubernetes 클러스터에서 동기화된 비밀만 삭제되고 Azure Key Vault에서 포함된 비밀 참조는 삭제되지 않습니다. 키 자격 증명 모음에서 인증서 비밀을 수동으로 삭제해야 합니다.
경고
Kubernetes 클러스터에서 SecretProviderClass 및 SecretSync 사용자 지정 리소스를 직접 편집하면 Azure IoT 작업에서 비밀 흐름이 끊어질 수 있습니다. 비밀과 관련된 모든 작업의 경우 작업 환경 웹 UI를 사용합니다.
동기화된 비밀을 삭제하기 전에 Azure IoT 작업 구성 요소에서 해당 비밀에 대한 모든 참조가 제거되었는지 확인합니다.