Enlaces Externos

Manual base de iFIX → Security Features

Introducción

Conceptos básicos

  • User Accounts
    Pueden pertenecer a 1 o más grupos

  • Group Accounts

  • Application Feature
    Privilegio para acceder a funciones específicas de iFIX
    (
    Listado de Features)

  • Security Areas
    Divisiones físicas o funcionales de la planta.

  • ESignature
    Solicitud de firma antes de cambiar cualquier proceso o reconocer alarmas.Pueden ser de 2 niveles (quien lo hace, quien lo verifica)



Security Path

La seguridad del servidor queda guardada en los security files, que se pueden exportar e importar entre servidores.  (nota, cualquier cambio en la seguridad requiere tener iFIX arrancado)

Group Accounts

Ejemplos de típicos perfiles de cuentas, con sus features:

Security Areas

Ejemplos de asignaciones de security areas a diferentes elementos de iFIX

Protección en Runtime

  • Scripts → se asigna el feature 

  • Pictures → se encuadran en una security area

  • Schedules → se encuadran en una security area

Otros aspectos

Gestión Privilegios de Seguridad

Conviene crear grupos, usuarios y "security areas” antes de habilitar la seguridad



También existe la posibilidad de definir un autologin con una cuenta pública (sin muchos privilegios, a modo de usuario bidón)

Uso de la Seguridad en iFIX

Puede hacerse que la seguridad de iFIX esté sincronizada con Windows, de forma que sea éste quien verifique el nombre y contraseña (pero la asignación de grupos, con sus areas y features la hace iFIX security). Ver apartado “Integración de la seguridad de iFIX con Windows” para más detalles

Formas de registrarse

  • Login manual
    (utilizando el Login program, disponible en Workspace o en el Menú “Options” del iFIX startup)

Además del volcado en alarmas de los intentos de login fallados, existe una completa auditoría de trazas en el “Security Log File” de iFIX.

Integración de la seguridad de iFIX con Windows

Consiste en mapear cuentas de usuario iFIX con cuentas de usuario Windows. De esta forma es Windows quien valida el nombre de usuario y contraseña (sólo valida esto).

Cuando decimos “Windows” podemos estar hablando del OS local o bien de un AD (o esquemas mixtos entre ambos)


Esta delegación en Windows de las validaciones de usuario incorpora funcionalidades adicionales:

  • Caducidad de password

  • Cambios de password sin parar iFIX

  • Políticas de complejidad del password

  • Bloqueos de cuentas

  • etc

También unifica los passwords (ya no hay que registrarse en windows y luego registrarse en iFIX)

Definición de las cuentas de Windows a utilizar

Las cuentas Windows se definen según las reglas estándar de Windows.
Nota: Es importante tener en cuenta que los usuarios de dominio deben de tener la característica "Access this computer from the network" aplicada en sus "Local Security Settings" (eso ocurre por defecto en todos los usuarios que sean del grupo “users” o “everyone”). Más info en el enlace anterior.

El archivo “secnet.ini”

También hay que tener en cuenta que es posible ajustar el modo en que iFIX Security recurre al control de cuentas de Windows AD (la Windows API que utilizará iFIX).

Esto se hace desde el archivo “Secnet.ini” que está alojado en la carpeta LOCAL, según se explica aquí


También existe la posibilidad de “cachear” la información del dominio, para no bloquear la gestión de seguridad si se perdiese la conexión con el dominio. Esto también se define en secnet.ini tal y como se ve aquí

Sincronización iFIX Security <-> Windows

Toda la sincronización posterior se puede hacer de 2 formas:

  • iFIX Security Configuration program

  • Security Synchronizer program (actualización masiva de todas las cuentas)

iFIX Security Configuration Program

Los pasos a seguir son:

  1. Crear cuentas Windows (local o en AD)

  2. Si alguna de estas cuentas ha de poder registrarse tanto en iFIX como en Windows, le hemos de añadir los privilegios propios de Windows (tanto si son locales como si son de dominio)

  3. Ejecutamos el iFIX Security Configuration Program y…

    Cosas a tener en cuenta:

    1. Si la cuenta es LOCAL, dejamos el campo “domain” en blanco.

    2. Si la cuenta es AD, ponemos en “domain” el nombre del dominio
      (el “NetBIOS name” del dominio)

    3. Tanto los nombres de usuario como de dominio han de coincidir exactamente con los de Windows.

Security Synchronizer Program

Este programa permite que Windows security sea la fuente central de configuración de la que iFIX depende (esta centralización es clave para configuraciones que deban cumplir con la 21 CFR Part 11).

Su funcionamiento consiste en mapear los grupos de Windows directamente en privilegios de seguridad de iFIX. Los grupos como Windows están definidos de forma que se pueden identificar con privilegios de iFIX según una nomenclatura específica. 

Los usuarios Windows que no existan en iFIX son creados automáticamente y los usuarios iFIX que estén definidos como dependientes de Windows, son actualizados automáticamente.


Para implementarlo, el workflow sería:

  1. Elegimos si la fuente de la seguridad será un PC local, un dominio o ambos

  2. Creamos Windows Groups para cada privilegio iFIX que queramos gestionar (Security AreasApplication Features y Security Groups).
    Aquí entra en juego una nomenclatura rígida, para facilitar el mapeo de estos grupos Windows contra las features de iFIX Security. Ésta afecta a los prefijos de los nombres de grupo:

    Nota: Atención a los espacios, antes y después del “ - “

Ejemplos de nombres de grupos de Windows, mapeados contra iFIX security:

En el caso concreto de las Application Features (“FAF-“) tenemos el listado completo de opciones disponibles aquí

También hay otras restricciones en los nombres, principalmente la de que no deben pasar de 20 caracteres en total (si son de dominio). Pueden consultarse todas, así como algunos trucos para tener más de 20 caracteres disponibles, aquí.

  1. Creamos y asignamos usuarios Windows a estos grupos

  2. Sólo si vamos a ejecutar el Synchronizer con la seguridad habilitada, entonces:
    Configuramos 1 usuario iFIX (no dependiente de Windows) con los privilegios necesarios para ejecutar el Synchronizer ("Security Synchronizer" y "System User Login")

    Lo registramos en la funcionalidad de "autologin", como "system user":
    Nos hemos de asegurar que está usuario esté registrado cuando el Synchronizer esté corriendo.

  3. Por último, ejecutamos el Synchronizer para que acceda a toda esta información de Windows. 
    NOTA: al ejecutar el Synchronizer, la ventana del "security configuration" debe estar cerrada
    A partir de ahí crea la seguridad de iFIX en consecuencia, según este procedimiento automático

    • Synchronizer modifica en iFIX sólo aquellas cuentas de usuario que estén en la seguridad de Windows (si hay alguna más exclusiva de iFIX, la respeta como esté, o bien podemos hacer que la borre añadiendo un parámetro, como puede verse aquí)

    • Las llamadas al Synchronizer pueden ser periódicas, definidas según un Scheduler, tal y como se detalla aquí

Configuraciones de Synchronizer a tener en cuenta:
  • Synchronizer se encarga de recorrer Windows Local, Windows AD o ambas fuentes de seguridad (Storage configurations)

  • Synchronizer guarda log de los cambios de seguridad implementados en cada ejecución

  • Synchronizer puede ejecutarse desde línea de comando y tiene una serie de parámetros de configuración muy detallados (aquí)
    Entre estos parámetros está la secuencia de dominios (y máquinas locales) donde debe tomar la configuración de seguridad a implementar

  • Hay una serie de temas variados a tener en cuenta antes de ejecutar el Synchronizer

    • Elegir un usuario específico para ejecutar el Synchronizer periódicamente

    • Asegurarnos de que al menos 1 de los usuarios que vayamos a importar de Windows tenga privilegios para “iFIX Security Configuration” 
      (o eso, o añadimos un usuario de iFIX para este menester)

    • Synchronizer puede ejecutarse centrado en un nodo concreto (no correría como servicio, sino como aplicación vinculada a un usuario de sistema) o puede lanzarse centrado en un usuario concreto (en ese caso, los permisos del usuario serían determinantes). 
      Esto se detalla aquí


  • iFix dispone de una herramienta para facilitar la creación de grupos de Windows, siguiendo las directrices en cuento a nomenclatura y otras consideraciones (CreateWindowsGroups Tool)
    Está descrita aquí


Ejemplo de ejecución del Security Synchronizer:

El siguiente artículo de la web de soporte de GE presenta un resumen del procedimiento, en el formato de guía paso a paso. También se ofrece un caso de ejemplo comentado, para mayor claridad:
https://digitalsupport.ge.com/s/article/How-To-Use-The-Security-Synchronizer


Errores en el login:

Si la sincronización funciona adecuadamente, pero los usuarios de dominio no son aceptados en el momento de autenticarse, puede deberse a problemas en la validación de las credenciales facilitadas por iFIX al dominio.


Esta circunstancia quedará representada en los archivos ALM del proyecto iFix, con mensajes del estilo de:

"SECURITY VIOLATION: xxxx failed login attempt - Unknown user name or bad password. "


En este caso conviene revisar la configuración del dominio, siguiendo las directrices de esta Technote de GE Digital, que cubre temas como la API a través de la cual intercambiarán información iFIX y el Dominio (configurable en el archivo "secnet.ini", ya tratado anteriormente en este artículo)