Descubrimientos Docker
Los descubrimientos Docker permiten listar un conjunto de imágenes Docker a partir de un registro o de un despliegue existente. Las imágenes Docker descubiertas pueden luego añadirse mediante una acción grupal a Cyberwatch para ser escaneadas.
Kubernetes vía kubeconfig
Requisitos previos
Los descubrimientos Kubernetes vía kubeconfig requieren:
- El archivo kubeconfig de los clústeres a escanear, cuya autenticación Microsoft Entra esté delegada a
kubelogin- En cada clúster a escanear, el derecho de listar los pods (permiso Lector RBAC Azure Kubernetes Service)
- Los requisitos propios del modo de autenticación elegido, detallados en la sección correspondiente más abajo
El descubrimiento Kubernetes vía kubeconfig escanea los clústeres Kubernetes descritos en un archivo kubeconfig para listar todas las imágenes Docker que allí están desplegadas. Los modos de autenticación actualmente soportados están dirigidos a los clústeres AKS autenticados mediante Microsoft Entra.
Este descubrimiento es complementario al descubrimiento AKS: está especialmente dirigido a los clústeres cuya audiencia de Microsoft Entra es personalizada (un server-id propio de su registro de aplicación, en lugar de la audiencia AKS por defecto), a los que el descubrimiento AKS estándar no puede acceder. Dado que el server-id se lee directamente del archivo kubeconfig, este descubrimiento funciona cualquiera que sea la audiencia configurada en el clúster.
El descubrimiento requiere un conjunto de credenciales de tipo Archivo kubeconfig, que puede crear desde el menú Identificadores registrados. Basta con pegar el contenido de su archivo kubeconfig (que debe contener las secciones clusters, contexts y users), y luego elegir el Modo de autenticación correspondiente al método declarado en el archivo kubeconfig para autenticarse ante sus clústeres.
Cyberwatch recorre todos los contextos definidos en el archivo kubeconfig y escanea cada clúster al que logra autenticarse. Un contexto que corresponde a otro modo de autenticación o a otro identificador distinto del configurado será ignorado, sin interrumpir el escaneo de los demás contextos.
Los archivos kubeconfig generados para AKS delegan la autenticación al binario kubelogin. Cyberwatch no ejecuta este binario: lee el modo de autenticación y sus parámetros (en particular el server-id) directamente del archivo, y luego obtiene el token de Microsoft Entra. Por lo tanto, no es necesaria ninguna instalación de kubelogin en Cyberwatch.
AKS — Service Principal
Requisitos previos
- Un conjunto de credenciales Microsoft Azure de tipo principal de servicio, creado como para los descubrimientos Azure, cuyo id de aplicación (cliente) y el id de inquilino correspondan a los indicados en el archivo kubeconfig
Este modo es adecuado para los archivos kubeconfig cuyo usuario se autentica mediante un principal de servicio (Service Principal), es decir, cuya orden kubelogin es de la forma ... --login spn. El token de acceso al clúster se obtiene a partir de este conjunto de credenciales, que sirve de identificador padre para el archivo kubeconfig. Este archivo se obtiene así:
az aks get-credentials --resource-group <resource-group> --name <cluster-name>
kubelogin convert-kubeconfig -l spn
Al crear el identificador Archivo kubeconfig, seleccione el modo AKS — Service Principal, y luego seleccione el conjunto de credenciales Microsoft Azure en el campo Identificador Azure.
AKS — Identidad de carga de trabajo
Requisitos previos
- Una instalación de Cyberwatch alojada en un clúster AKS y configurada en identidad de carga de trabajo, siguiendo Configurar Azure Workload Identity en AKS
Este modo es adecuado para los archivos kubeconfig cuyo usuario se autentica mediante la identidad de carga de trabajo (Workload Identity) de Microsoft Entra, es decir, cuya orden kubelogin es de la forma ... --login workloadidentity. No se necesita ningún secreto ni identificador padre: Cyberwatch se autentica usando la identidad federada de sus propios pods. Este archivo se obtiene así:
az aks get-credentials --resource-group <resource-group> --name <cluster-name>
kubelogin convert-kubeconfig -l workloadidentity
Al crear el identificador Archivo kubeconfig, seleccione el modo AKS — Identidad de carga de trabajo. No se requiere ningún identificador padre: los parámetros de autenticación se derivan del entorno del pod.
Si el despliegue de Cyberwatch no está configurado en identidad de carga de trabajo, este modo no puede utilizarse: los contextos afectados serán ignorados y señalados como tales en el resultado del descubrimiento.
Crear el descubrimiento
Una vez listo el conjunto de credenciales, podrá crear el descubrimiento desde el menú Descubrimientos, haciendo clic en el botón Añadir y luego en Kubernetes vía kubeconfig en la sección Imágenes Docker.
Añadir las imágenes Docker descubiertas
Desde la lista de activos descubiertos, podrá ver y filtrar las imágenes que no tienen activos asociados. Para añadirlas a Cyberwatch, puede seleccionar las que desea escanear y hacer clic en Acciones grupales > Escanear como imágenes Docker.
La incorporación de imágenes Docker recién descubiertas a Cyberwatch puede automatizarse activando el registro automático desde el formulario de edición del descubrimiento.
El registro se elige automáticamente a partir del nombre de la imagen descubierta. Por ejemplo, una imagen example.com/library/hello utilizará automáticamente el registro Docker example.com, siempre que haya sido añadido como identificador registrado. Si el registro es nuevo, se creará automáticamente un identificador registrado y podrá ser editado manualmente posteriormente si se requiere autenticación. A veces es posible indicar un registro preferido, pero solo se utilizará para las imágenes descubiertas cuyo registro en el nombre coincida con el punto de entrada del registro.