Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Guía de administración del sistema: servicios de seguridad |
Parte I Descripción general de la seguridad
1. Servicios de seguridad (descripción general)
Parte II Seguridad de sistemas, archivos y dispositivos
2. Gestión de seguridad de equipos (descripción general)
3. Control de acceso a sistemas (tareas)
4. Control de acceso a dispositivos (tareas)
5. Uso de la herramienta básica de creación de informes de auditoría (tareas)
6. Control de acceso a archivos (tareas)
7. Uso de la herramienta automatizada de mejora de la seguridad (tareas)
Parte III Roles, perfiles de derechos y privilegios
8. Uso de roles y privilegios (descripción general)
9. Uso del control de acceso basado en roles (tareas)
10. Control de acceso basado en roles (referencia)
Contenido de los perfiles de derechos
Perfil de derechos de administrador principal
Perfil de derechos de administrador del sistema
Perfil de derechos de operador
Perfil de derechos de gestión de impresoras
Perfil de derechos de usuario de Solaris básico
Visualización del contenido de los perfiles de derechos
Denominación y delegación de autorizaciones
Convenciones de denominación de autorizaciones
Ejemplo de granularidad de autorizaciones
Autoridad de delegación en autorizaciones
Bases de datos que admiten RBAC
Relaciones entre bases de datos de RBAC
Comandos que requieren autorizaciones
Parte IV Servicios criptográficos
13. Estructura criptográfica de Oracle Solaris (descripción general)
14. Estructura criptográfica de Oracle Solaris (tareas)
15. Estructura de gestión de claves de Oracle Solaris
Parte V Servicios de autenticación y comunicación segura
16. Uso de servicios de autenticación (tareas)
19. Uso de Oracle Solaris Secure Shell (tareas)
20. Oracle Solaris Secure Shell (referencia)
21. Introducción al servicio Kerberos
22. Planificación del servicio Kerberos
23. Configuración del servicio Kerberos (tareas)
24. Mensajes de error y resolución de problemas de Kerberos
25. Administración de las políticas y los principales de Kerberos (tareas)
26. Uso de aplicaciones Kerberos (tareas)
27. El servicio Kerberos (referencia)
Parte VII Auditoría de Oracle Solaris
28. Auditoría de Oracle Solaris (descripción general)
29. Planificación de la auditoría de Oracle Solaris
30. Gestión de la auditoría de Oracle Solaris (tareas)
Las siguientes cuatro bases de datos almacenan los datos de los elementos de RBAC:
Base de datos de atributos de usuario extendidos (user_attr): asocia usuarios y los roles con autorizaciones, privilegios y perfiles de derechos.
Base de datos de atributos de perfil de derechos (prof_attr): define perfiles de derechos, enumera autorizaciones asignadas de perfiles y palabras clave, e identifica el archivo de ayuda asociado.
Base de datos de atributos de autorización (auth_attr): define autorizaciones y sus atributos, e identifica el archivo de ayuda asociado.
Base de datos de atributos de ejecución (exec_attr): identifica los comandos con atributos de seguridad que están asignados a perfiles de derechos específicos.
La base de datos policy.conf contiene autorizaciones, privilegios y perfiles de derechos que se aplican a todos los usuarios. Para obtener más información, consulte Archivo policy.conf.
Cada base de datos de RBAC utiliza la sintaxis clave=valor para almacenar los atributos. Este método permite ampliaciones futuras en las bases de datos. El método también permite que el funcionamiento de un sistema continúe si se encuentra una palabra clave que es desconocida para su política. El contenido de clave=valor enlaza los archivos. Las siguientes entradas vinculadas de la cuatro bases de datos ilustran cómo trabajan juntas las bases de datos de RBAC.
Ejemplo 10-1 Visualización de las conexiones de las bases de datos de RBAC
En el siguiente ejemplo, el usuario jdoe obtiene las capacidades del perfil de derechos de gestión de sistemas de archivos mediante la asignación del rol filemgr.
Al usuario jdoe se le asigna el rol filemgr en la entrada de usuario jdoe de la base de datos user_attr.
# user_attr - user definition jdoe::::type=normal;roles=filemgr
Al rol filemgr se le asigna el perfil de derechos de gestión de sistemas de archivos en la entrada del rol de la base de datos user_attr.
# user_attr - role definition filemgr::::profiles=File System Management;type=role
El usuario y el rol se definen de manera exclusiva en los archivos passwd y shadow del sistema local o bases de datos equivalentes en un servicio de nombres distribuido.
El perfil de derechos de gestión de sistemas de archivos se define en la base de datos prof_attr. Esta base de datos también asigna tres conjuntos de autorizaciones a la entrada de gestión de sistemas de archivos.
# prof_attr - rights profile definitions and assigned authorizations File System Management:::Manage, mount, share file systems: help=RtFileSysMngmnt.html; auths=solaris.admin.fsmgr.*,solaris.admin.diskmgr.*,solaris.admin.volmgr.*
Las autorizaciones se definen en la base de datos auth_attr.
# auth_attr - authorization definitions solaris.admin.fsmgr.:::Mounts and Shares::help=AuthFsmgrHeader.html solaris.admin.fsmgr.read:::View Mounts and Shares::help=AuthFsmgrRead.html solaris.admin.fsmgr.write:::Mount and Share Files::help=AuthFsmgrWrite.html
Al perfil de derechos de gestión de sistemas de archivos se le asignan comandos con atributos de seguridad en la base de datos exec_attr.
# exec_attr - rights profile names with secured commands File System Management:suser:cmd:::/usr/sbin/mount:uid=0 File System Management:suser:cmd:::/usr/sbin/dfshares:euid=0 … File System Management:solaris:cmd:::/usr/sbin/mount:privs=sys_mount …
El ámbito de servicio de nombres de las bases de datos de RBAC se puede aplicar al host local solamente. El ámbito puede incluir también todos los hosts gestionados por un servicio de nombres, como NIS, NIS+ o LDAP. En el archivo /etc/nsswitch.conf, se define qué servicio de nombres tiene prioridad para cada una de las bases de datos.
Entrada auth_attr: define la prioridad de servicio de nombres para la base de datos auth_attr.
Entrada passwd: define la prioridad de servicio de nombres para la base de datos user_attr.
Entrada prof_attr: define la prioridad de servicio de nombres para la base de datos prof_attr. También define la prioridad de servicio de nombres para la base de datos exec_attr.
Por ejemplo, si se asigna un comando con atributos de seguridad a un perfil de derechos que existe en dos servicios de nombres, sólo se utiliza la entrada del primer servicio.
La base de datos user_attr contiene información de usuarios y roles que complementa las bases de datos passwd y shadow. La base de datos user_attr contiene atributos de usuario extendidos, como autorizaciones, perfiles de derechos, privilegios y roles asignados. Los campos de la base de datos user_attr están separados por dos puntos, de la siguiente forma:
user:qualifier:res1:res2:attr
Los campos tienen los siguientes significados:
Nombre del usuario o rol como se especificó en la base de datos passwd.
Estos campos están reservados para uso futuro.
Lista opcional de pares de clave y valor separados por punto y coma (;) que describe los atributos de seguridad que se aplicarán cuando el usuario ejecute comandos. Las cuatro claves válidas son type, auths, profiles y roles.
La palabra clave type se puede establecer en normal si esta cuenta es para un usuario común. La palabra clave type se define en role cuando esta cuenta es para un rol.
La palabra clave auths especifica una lista separada por comas de nombres de autorizaciones que se eligen de los nombres definidos en la base de datos auth_attr. Los nombres de autorizaciones pueden incluir un asterisco (*) como carácter comodín. Por ejemplo, solaris.device.* significa todas las autorizaciones de dispositivos de Oracle Solaris.
La palabra clave profiles especifica una lista ordenada y separada por comas de nombres de perfiles de derechos de la base de datos prof_attr. El orden de los perfiles de derechos funciona de modo similar a las rutas de búsqueda UNIX. El primer perfil de la lista que contiene el comando que se ejecutará define qué atributos de seguridad (si corresponde) se aplicarán al comando.
La palabra clave roles especifica una lista separada por comas de nombres de roles. Tenga en cuenta que los roles se definen en la misma base de datos user_attr. Los roles se indican mediante la definición del valor del tipo en role. No se pueden asignar roles a otros roles.
El siguiente ejemplo muestra cómo el rol de operador se define en una base de datos user_attr típica. El siguiente ejemplo muestra cómo se asigna el rol al usuario jdoe. Los roles y los usuarios se diferencian por la palabra clave type.
% grep operator /etc/user_attr jdoe::::type=normal;roles=operator operator::::profiles=Operator;type=role
Todas las autorizaciones se almacenan en la base de datos auth_attr. Las autorizaciones se pueden asignar a usuarios, roles o perfiles de derechos. El método preferido es colocar las autorizaciones en un perfil de derechos, incluir el perfil en la lista de perfiles de un rol y, a continuación, asignar el rol a un usuario.
Los campos de la base de datos auth_attr están separados por dos puntos, de la siguiente forma:
authname:res1:res2:short_desc:long_desc:attr
Los campos tienen los siguientes significados:
Cadena de caracteres única que se utiliza para identificar la autorización con el formato prefijo.[sufijo]. Las autorizaciones para Oracle Solaris usan solaris como prefijo. Todas las demás autorizaciones deben utilizar un prefijo que comience con el orden inverso del nombre de dominio en Internet de la organización que crea la autorización (por ejemplo, com.xyzcompany). El sufijo indica qué se autoriza, que suele ser el área funcional y el uso.
Cuando authname consta de un prefijo y un área funcional, y finaliza con un punto, authname funciona como encabezado para las aplicaciones en sus interfaces gráficas de usuario. Un valor authname con dos partes no es una autorización real. El valor authname de solaris.printmgr. es un ejemplo de encabezado.
Cuando authname finaliza con la palabra “grant”, authname funciona como autorización de concesión. Una autorización de concesión permite al usuario delegar a otros usuarios autorizaciones con el mismo prefijo y área funcional. El valor authname de solaris.printmgr.grant es un ejemplo de autorización de concesión. solaris.printmgr.grant otorga al usuario el derecho de delegar a otros usuarios autorizaciones como solaris.printmgr.grant y solaris.printmgr.nobanner.
Reservado para uso futuro.
Nombre corto para la autorización. Este nombre corto es adecuado para su visualización en interfaces de usuario, como en una lista de desplazamiento de una interfaz gráfica de usuario.
Descripción larga. Este campo identifica la finalidad de la autorización, las aplicaciones en las que se utiliza la autorización y el tipo de usuario que puede emplear la autorización. La descripción larga se puede mostrar en el texto de ayuda de una aplicación.
Lista opcional de pares de clave y valor separados por punto y coma (;) que describen los atributos de una autorización. Es posible especificar cero claves o más.
La palabra clave help identifica un archivo de ayuda en HTML. Es posible acceder a los archivos de ayuda desde el archivo index.html del directorio /usr/lib/help/auths/locale/C.
El siguiente ejemplo muestra una base de datos auth_attr con algunos valores típicos:
% grep printer /etc/security/auth_attr solaris.admin.printer.:::Printer Information::help=AuthPrinterHeader.html solaris.admin.printer.delete:::Delete Printer Information::help=AuthPrinterDelete.html solaris.admin.printer.modify:::Update Printer Information::help=AuthPrinterModify.html solaris.admin.printer.read:::View Printer Information::help=AuthPrinterRead.html
Tenga en cuenta que solaris.admin.printer. se define como un encabezado, porque el nombre de la autorización finaliza con un punto (.). Los encabezados se utilizan en las interfaces gráficas de usuario para organizar las familias de autorizaciones.
La base de datos prof_attr almacena el nombre, la descripción, la ubicación del archivo de ayuda, los privilegios y las autorizaciones que se asignan a los perfiles de derechos. Los comandos y los atributos de seguridad que se asignan a los perfiles de derechos se almacenan en la base de datos exec_attr. Para obtener más información, consulte Base de datos exec_attr. Los campos de la base de datos prof_attr están separados por dos puntos, de la siguiente forma:
profname:res1:res2:desc:attr
Los campos tienen los siguientes significados:
Nombre del perfil de derechos. Los nombres de perfiles de derechos distinguen mayúsculas de minúsculas. Este nombre también se utiliza en la base de datos user_attr para indicar los perfiles asignados a roles y usuarios.
Reservado para uso futuro.
Descripción larga. Este campo debe explicar la finalidad del perfil de derechos, incluido qué tipo de usuario estaría interesado en utilizar el perfil. La descripción larga debe ser adecuada para su visualización en el texto de ayuda de una aplicación.
Lista opcional de pares de clave y valor separados por punto y coma (;) que describe los atributos de seguridad que se aplicarán al objeto en la ejecución. Es posible especificar cero claves o más. Las claves válidas son help, profiles y auths.
La palabra clave help identifica un archivo de ayuda en HTML. Es posible acceder a los archivos de ayuda desde el archivo index.html del directorio /usr/lib/help/profiles/locale/C.
La palabra clave profiles especifica una lista separada por comas de perfiles de derechos. Estos perfiles se denominan perfiles de derechos complementarios.
La palabra clave auths especifica una lista separada por comas de nombres de autorizaciones que se eligen de los nombres definidos en la base de datos auth_attr. Los nombres de autorizaciones se pueden especificar con un asterisco (*) como carácter comodín.
La palabra clave privs especifica una lista separada por comas de privilegios. Estos privilegios están vigentes para todos los comandos en un shell de perfil.
El siguiente ejemplo muestra dos entradas típicas de la base de datos prof_attr. Tenga en cuenta que el perfil de derechos de gestión de impresoras es un perfil de derechos complementario del perfil de derechos de operador. El texto del ejemplo se ajustó con fines de visualización.
% grep 'Printer Management' /etc/security/prof_attr Printer Management::: Name of rights profile Manage printers, daemons, spooling: Description help=RtPrntAdmin.html; Help file auths=solaris.admin.printer.read, Authorizations solaris.admin.printer.modify,solaris.admin.printer.delete ... Operator::: Name of rights profile Can perform simple administrative tasks: Description profiles=Printer Management, Supplementary rights profiles Media Backup,All; help=RtOperator.html Help file
La base de datos exec_attr define los comandos que requieren atributos de seguridad para ejecutarse correctamente. Los comandos forman parte de un perfil de derechos. Un comando con sus atributos de seguridad puede ser ejecutado por los roles o usuarios a los que se asignó el perfil.
Los campos de la base de datos exec_attr están separados por dos puntos, de la siguiente forma:
name:policy:type:res1:res2:id:attr
Los campos tienen los siguientes significados:
Nombre del perfil de derechos. Los nombres de perfiles de derechos distinguen mayúsculas de minúsculas. El nombre hace referencia a un perfil en la base de datos prof_attr.
Política de seguridad asociada a esta entrada. Actualmente, suser y solaris son las entradas válidas. La política solaris reconoce privilegios. La política suser no.
Tipo de entidad que se especifica. Actualmente, el único tipo de entidad válido es cmd (comando).
Reservado para uso futuro.
Cadena que identifica la entidad. Los comandos deben tener la ruta completa o una ruta con un carácter comodín (*). Para especificar argumentos, escriba una secuencia de comandos con los argumentos y señale el id en la secuencia de comandos.
Lista opcional de pares de clave y valor separados por punto y coma (;) que describe los atributos de seguridad que se aplicarán a la entidad en la ejecución. Es posible especificar cero claves o más. La lista de palabras clave válidas depende de la política aplicada.
Para la política suser, las cuatro claves válidas son euid, uid, egid y gid.
Las palabras clave euid y uid contienen un nombre de usuario único o un ID de usuario numérico (UID). Los comandos diseñados con euid se ejecutan con el UID proporcionado, un proceso similar a la definición del bit setuid en un archivo ejecutable. Los comandos diseñados con uid se ejecutan con el UID real y el UID efectivo.
Las palabras clave egid y gid contienen un nombre de grupo único o un ID de grupo numérico (GID). Los comandos diseñados con egid se ejecutan con el GID proporcionado, un proceso similar a la definición del bit setgid en un archivo ejecutable. Los comandos diseñados con gid se ejecutan con el GID real y el GID efectivo.
Para la política solaris, la palabra clave válida es privs. El valor consta de una lista de privilegios separados por comas.
El siguiente ejemplo muestra algunos valores típicos de una base de datos exec_attr:
% grep 'File System Management' /etc/security/exec_attr File System Management:suser:cmd:::/usr/sbin/ff:euid=0 File System Management:solaris:cmd:::/usr/sbin/mount:privs=sys_mount …
El archivo policy.conf ofrece una manera de otorgar perfiles de derechos específicos, autorizaciones específicas y privilegios específicos a todos los usuarios. Las entradas pertinentes del archivo constan de pares clave=valor:
AUTHS_GRANTED=autorizaciones: hace referencia a una o varias autorizaciones.
PROFS_GRANTED=perfiles de derechos: hace referencia a uno o varios perfiles de derechos.
PRIV_DEFAULT=privilegios: hace referencia a uno o varios privilegios.
PRIV_LIMIT=privilegios: hace referencia a todos los privilegios.
El siguiente ejemplo muestra algunos valores típicos de una base de datos policy.conf:
# grep AUTHS /etc/security/policy AUTHS_GRANTED=solaris.device.cdrw # grep PROFS /etc/security/policy PROFS_GRANTED=Basic Solaris User # grep PRIV /etc/security/policy #PRIV_DEFAULT=basic #PRIV_LIMIT=all
Para obtener más información sobre los privilegios, consulte Privilegios (descripción general).