Cómo Configurar la Seguridad en Apache NiFi

Última actualización: 22/06/2023 – Oscar Fernandez

NiFi es una herramienta poderosa que se utiliza para la gestión de flujos de datos. Al manejar grandes cantidades de datos, la seguridad en Apache NiFi es una preocupación importante. Necesitamos asegurar que los datos se están transmitiendo y almacenando de manera segura y que solo las personas autorizadas puedan acceder a ellos.

Seguridad Apache NiFi

En este artículo, exploraremos cómo configurar la seguridad en Apache NiFi para garantizar la privacidad y la seguridad de tus datos.

Configuración Básica de Seguridad en Apache NiFi

La configuración básica de seguridad en Apache NiFi consiste en implementar medidas como la autenticación y la autorización de usuarios, la encriptación de datos y la creación de certificados SSL.

Para habilitar la autenticación de usuarios, se puede configurar un directorio LDAP o el uso de usuarios y contraseñas en el archivo nifi.properties. Esto se consigue con el uso de un Login Identity Provider.

La propiedad nifi.security.user.login.identity.provider especifica qué Login Provider de los configurados usar. Por defecto, tiene el valor single-user-provider para usar un usuario y contraseña.

La propiedad nifi.login.identity.provider.configuration.file especifica el fichero de configuración, por defecto ./conf/login-identity-providers.xml.

También podremos configurar la autenticación anónima con la propiedad nifi.security.allow.anonymous.authentication. Si la activamos, también tendremos que configurar su autorizador, que no está incluido por defecto.

No se puede configurar NiFi con varias estrategias de autenticación al mismo tiempo. Si no se han configurado otras estrategias, requerirá certificados de cliente para autenticar usuarios a través de HTTPS.

Autorización en Apache NiFi

En Apache NiFi, es posible configurar políticas de autorización para definir quién tiene acceso a los componentes y a las acciones dentro del flujo de datos.

Se puede utilizar el componente Access Policy para definir permisos y roles para los usuarios y grupos. Además, se recomienda habilitar la encriptación de datos utilizando SSL, lo que garantiza que la información transmitida entre los nodos de NiFi esté protegida.

También se puede integrar con la herramienta Apache Ranger, que proporciona una interfaz de usuario para administrar y configurar políticas de autorización.

Para configurar las políticas de autorización en Apache Ranger, primero se debe crear un servicio de NiFi en la interfaz de usuario de Ranger. Luego, se pueden definir políticas para usuarios y grupos, especificando qué componentes y acciones tienen permitidos o denegados. También se pueden establecer condiciones para la autorización, como la hora del día o la dirección IP desde la cual se está accediendo.

Integración de NiFi con directorios LDAP

Integrar Apache NiFi con un directorio de autenticación y autorización, como LDAP, es una de las formas más comunes de implementar la seguridad en NiFi. Esta integración permite la gestión centralizada de usuarios y grupos, y también la implementación de políticas de autorización basadas en roles.

Para integrar NiFi con LDAP, se deben configurar los controladores de acceso para que utilicen el servidor LDAP como fuente de autenticación y autorización. Además, se debe configurar NiFi para que utilice un proveedor de seguridad de LDAP, lo que permitirá que los usuarios se autentiquen y se les concedan permisos de acceso según los roles definidos en el servidor LDAP.

La propiedad nifi.security.user.login.identity.provider=ldap-provider activa la autenticación LDAP. Después, tendremos que editar el fichero login-identity-providers.xml con los detalles de nuestro servicio proveedor de LDAP y reiniciar el cluster de NiFi para que los cambios tengan efecto.

Configuración de SSL/TLS en Apache NiFi

Para asegurar las comunicaciones entre los diferentes componentes de Apache NiFi, se puede habilitar el cifrado SSL/TLS. Esto permite que los datos se transmitan de manera segura y cifrada a través de la red. Para configurar SSL/TLS en Apache NiFi, se necesitan un par de certificados, uno para el servidor NiFi y otro para el cliente que se va a conectar. Además, se requiere configurar el archivo de propiedades nifi.properties con las rutas de los certificados y claves.

También podremos especificar qué versiones de SSL/TLS habilitar y qué algoritmos de cifrado usar. Una vez configurado, SSL/TLS ofrece una capa adicional de seguridad para la red.

Siguientes Pasos Con Apache NiFi: Curso

El curso de Apache NiFi te enseñará esta tecnología desde cero. De esta forma podrás implementar tus pipelines de movimiento y de ingesta de datos. Al finalizar el curso podrás usar Apache NiFi en un entorno profesional. Se compone de clases teóricas y prácticas para que aprendas a tu ritmo, de forma incremental y paso a paso. ¡Aprovecha el cupón del enlace a continuación!

Apache NiFi desde cero: La guía esencial

Deja una respuesta