Funciones y recursos de los usuarios

IBM® Key Protect for IBM Cloud® da soporte a un sistema de control de acceso centralizado que utiliza IBM Cloud® Identity and Access Management para ayudarle a asignar a los usuarios los roles y el acceso correctos para su cuenta, instancias de servicio, claves de cifrado y conjuntos de claves.

Debido a que Key Protect es un sistema de gestión de claves que, por su naturaleza, implica el cifrado de datos importantes y a menudo confidenciales, es vital que la estructura de permisos sobre la cuenta, las instancias de servicio, las claves de cifrado y los conjuntos de claves sea potente y flexible. Con este fin, los roles IBM Cloud® Identity and Access Management se pueden asignar en combinaciones variables, en función del nivel de administración en cuestión.

Estos tipos variables de acceso son análogos a muchos tipos de situaciones de la vida. Una persona puede ser el fundador y director general de una empresa y, sin embargo, sólo ser un miembro ordinario de un club local y, de la misma forma, no tener ninguna autorización para escribir multas de tráfico. De forma similar, los roles de Key Protect se asignan dentro del contexto de una parte específica de Key Protect, aunque para simplificar las cosas, Key Protect define los roles "predeterminados" sobre determinados recursos, a menos que se especifique lo contrario (lo que se tratará más adelante con más detalle).

Hay dos áreas principales de administración para casi todos los productos IBM Cloud: la cuenta (también conocida como "plataforma") y las instancias de servicio propiedad de la cuenta. Un banco grande, por ejemplo, puede tener sólo una cuenta (controlada por la dirección ejecutiva) y separar instancias de servicio para cada una de las unidades organizativas del banco (por ejemplo, una unidad puede gestionar cuentas bancarias mientras que otra gestiona préstamos). Aunque es probable que los usuarios con derechos en el nivel de cuenta también tengan derechos sobre las distintas instancias (y quizás, aunque no siempre, al revés), tenga en cuenta que los nombres dados a los roles de cuenta son diferentes a los de los roles dentro de las instancias de servicio, lo que refleja esta diferencia entre los roles de cuenta y los roles de instancia de servicio. Para obtener más información sobre estos roles, sus nombres y sus permisos, consulte Roles y acciones de IAM.

Cómo funciona el acceso de IAM

Después de configurar y organizar grupos de recursos en su cuenta, puede aprovechar un par de estrategias para optimizar el proceso de gestión de accesos:

Grupos de acceso
Puede gestionar mínimamente el número de políticas asignadas proporcionando el mismo acceso a todas las identidades de un grupo de acceso en lugar de asignar el mismo acceso varias veces mediante el usuario individual, ID de servicio o perfil de confianza. Debe invitar previamente a los usuarios a su cuenta para poder añadirlos a un grupo de acceso. Si un usuario está cualificado para un perfil de confianza que es miembro del grupo de acceso, no es necesario invitarlo a su cuenta.
Perfiles de confianza
Si su organización tiene un directorio de empresa, los perfiles de confianza pueden reducir el tiempo y el trabajo necesarios para gestionar el acceso. Simplifica el proceso de inicio de sesión en la cuenta de IBM Cloud para los usuarios federados de la empresa. Puede otorgar automáticamente a los usuarios federados o los recursos de cálculo acceso a su cuenta creando perfiles de confianza. Para los usuarios federados, añada condiciones basadas en atributos SAML para definir qué usuarios federados pueden aplicar un perfil. Para los recursos de cálculo, especifique recursos específicos o añada condiciones basadas en atributos de recursos para definir qué recursos de cálculo pueden aplicar un perfil. Para ambos tipos de entidad, el nivel de acceso otorgado lo determinan las políticas de acceso especificadas dentro de cada perfil de confianza, o los grupos de acceso de los que el perfil de confianza es miembro. No obstante, los perfiles de confianza no requieren que se invite a usuarios federados a una cuenta, y solo los usuarios que estén federados por un proveedor de identidad (IdP) externo podrán aplicar un perfil de confianza.

Cuando es miembro de varios grupos de acceso, todas las políticas se aplican a la vez cuando accede a una cuenta. Como usuario federado, tiene la opción de aplicar distintos perfiles de confianza, aunque debe seleccionar solo un perfil para aplicarlo cuando inicie la sesión. Por ejemplo, si desea realizar tareas relacionadas con el desarrollador, seleccione el perfil Developer cuando inicie la sesión. Si desea completar una tarea relacionada con el administrador, seleccione el perfil de Admin que tenga permisos privilegiados. De esta forma, se reduce el riesgo de realizar acciones privilegiadas por error.

Una política consta de un sujeto, un destino y un rol. El tema en este caso es el grupo de acceso o el perfil de confianza. El destino es al que desea que acceda el sujeto como, por ejemplo, un conjunto de recursos en un grupo de recursos, una instancia de servicio, todos los servicios de la cuenta o todas las instancias de un servicio. El rol define el nivel de acceso otorgado.

Para obtener más información sobre cómo funcionan los roles de plataforma y servicios en Key Protect, consulte Roles de plataforma y roles de servicio.

Prácticas recomendadas

Existe un límite en cuanto al número total de políticas que se permiten en una cuenta. Puede utilizar varias estrategias para asegurarse de que no alcanza el límite y reducir la cantidad de tiempo que dedica a gestionar el acceso para las identidades en su cuenta (usuarios, ID de servicio o perfiles de confianza):

  • Utilice el principio de menor privilegio y asigne solo el acceso que sea necesario. Esto le puede ayudar a garantizar que las entidades de su cuenta se limitan únicamente a las acciones que desea permitir. Por ejemplo, en lugar de que el propietario de la cuenta comparta sus credenciales, que de forma predeterminada les da acceso de Administrador y Gestor sobre todos los recursos de su cuenta, cree nuevas políticas para los usuarios que necesitan acceder a la cuenta y a cada instancia de servicio (y sus claves asociadas).
  • Añada recursos a un grupo de recursos para minimizar el número de políticas necesarias. Por ejemplo, podría tener un equipo que trabaje en un proyecto que utilice recursos específicos de su cuenta. Añada los miembros del equipo a un grupo de acceso o un perfil de confianza con una política que asigne acceso solo a los recursos que están en un grupo de recursos específico. De este modo, no es necesario asignar una política a cada recurso para cada miembro del equipo. Para obtener más información sobre la asignación de acceso preciso, consulte Asignar acceso preciso a una sola clave.
  • Utilice grupos de acceso para agilizar la gestión del acceso para las identidades que requieren el mismo nivel de acceso. Puede configurar un grupo de acceso con una política específica definida y luego añadir esas identidades al grupo. Si los miembros del grupo necesitan más acceso más adelante, solo tiene que definir una nueva política para el grupo de acceso.
  • Utilice etiquetas de gestión de acceso para controlar el acceso a los recursos de su cuenta a escala. Al asignar el acceso solo a los recursos que tienen etiquetas específicas adjuntas, puede evitar varias actualizaciones de las políticas definidas. Para obtener más información, consulte Control del acceso a los recursos mediante etiquetas.
  • Utilice perfiles de confianza para otorgar automáticamente a los usuarios federados y los recursos de cálculo acceso a su cuenta. De esta forma, los usuarios federados pueden correlacionarse con uno o varios perfiles de confianza durante el inicio de sesión evaluando los atributos basados en SAML para determinar qué perfiles pueden aplicar. La utilización de perfiles de confianza para recursos de cálculo permite evitar el almacenamiento de credenciales para ejecutar aplicaciones, así como la gestión y la rotación de credenciales. También puede añadir perfiles de confianza a grupos de acceso para aprovechar el conjunto de políticas que ya ha creado.
  • Audite regularmente quién puede gestionar el control de acceso y suprimir los recursos clave. Debido a que los errores y un uso incorrecto por parte de los usuarios con permisos elevados pueden causar daños a su cuenta, a las instancias de servicio y a los datos protegidos mediante claves en la instancia de servicio, asegúrese de que se mantiene el acceso adecuado mediante la auditoría de los usuarios con dichos roles. Recuerde que las nuevas claves, conjuntos de claves o instancias de servicio que se creen están sujetos a las definiciones de roles existentes de forma predeterminada. Si no desea que un nuevo usuario que está asignado como Gestor de la instancia pueda acceder a una clave nueva ni modificarla, esa restricción debe asignarse específicamente, ya que los gestores de instancias tienen acceso a todas las claves de una instancia de forma predeterminada, incluyendo ida la capacidad de suprimir una clave.

¿Qué es una buena estrategia de grupo de acceso?

Un grupo de acceso es una organización de usuarios, ID de servicio y perfiles de confianza de una agrupación a la que se puede otorgar el mismo acceso IAM. Todas las identidades de un único grupo de acceso heredan el mismo acceso.

Una forma lógica de asignar acceso a los grupos de recursos y los recursos incluidos es mediante la creación de un grupo de acceso por nivel de acceso necesario. A continuación, puede correlacionar cada grupo de acceso con los grupos de recursos creados anteriormente. Por ejemplo, para controlar el acceso al proyecto CustApp, puede crear los siguientes grupos de acceso:

  • Auditor-Group
  • Developer-Group
  • Admin-Group

Para Auditor-Group, asigne dos políticas de acceso que otorgaran acceso de visor a los recursos y grupos de recursos de CustApp-Test y CustApp-Prod. Para Developer-Group, asigne dos políticas de acceso que otorgan acceso de editor los recursos y grupos de recursos de CustApp-Dev y CustApp-Test. Para Admin-Group, asigne tres políticas de acceso que otorguen acceso de administrador a los tres grupos de recursos de CustApp y a sus recursos.

Puede asignar acceso de administrador a todo lo relacionado con la cuenta creando un grupo de acceso y asignándole dos políticas. Para crear la primera política, seleccione Todos los servicios de identidad y acceso habilitados en Cuenta con el rol de plataforma Administrador y el rol de servicio Gestor. Para crear la segunda política, seleccione Todos los servicios de gestión de cuentas con el rol de Administrador asignado.

Roles de plataforma y roles de servicio

La palabra "objeto" se utiliza en esta sección como un término amplio para cosas como claves o conjuntos de claves o instancias de servicio o cuentas.

Como se ha mencionado anteriormente, los roles existen tanto en la plataforma (cuenta) como en el nivel de servicio. Si no está seguro de lo que una plataforma o un rol de servicio permite realizar a un usuario, recuerde que los roles de plataforma interactúan principalmente con los servicios de IBM Cloud como el controlador de recursos o Cloud Identity and Access Management. Los roles dentro de un servicio, por otro lado, interactúan principalmente con la API relevante, que en este caso es la API Key Protect. Esta es la razón por la que, como verá, los roles de plataforma tienen un uso limitado dentro de las instancias de servicio más allá (en el caso del rol de Administrador) de la capacidad de crear una política de acceso para un objeto determinado, como un anillo de claves.

Roles de plataforma

  • Administrador: Tiene todo el espectro de derechos sobre un objeto determinado y sus objetos "hijo" (por ejemplo, las claves son objetos hijo de instancias), incluyendo el derecho a invitar a nuevos usuarios y asignar roles sobre el objeto (sólo los administradores pueden asignar roles). Tenga en cuenta que los administradores no tienen roles de servicio de forma predeterminada. Sin embargo, pueden asignarse roles a sí mismos.
  • Editor: Puede ver, crear y suprimir instancias a nivel de cuenta, pero no puede invitar a nuevos usuarios. Tiene un uso limitado para objetos dentro de una instancia de servicio, como por ejemplo claves, más allá de la capacidad de verlos.
  • Operador: Puede ver instancias a nivel de cuenta, pero no puede editarlas. Tiene un uso limitado para objetos dentro de una instancia de servicio, como por ejemplo claves, más allá de la capacidad de verlos.
  • Visor: Puede ver instancias a nivel de cuenta, pero no puede editarlas. Tiene un uso limitado para objetos dentro de una instancia de servicio, como por ejemplo claves, más allá de la capacidad de verlos.

Los roles de plataforma se asignan sobre una cuenta completa, sobre instancias de servicio determinadas o dentro de objetos dentro de una instancia de servicio.

Enumera las funciones de gestión de la plataforma en lo que respecta a Key Protect
Acción Visor Editor Operador Administrador
Ver instancias de Key Protect icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Crear instancias de Key Protect icono de marca de selección icono de marca de selección
Suprimir instancias de Key Protect icono de marca de selección icono de marca de selección
Invitar a nuevos usuarios y gestionar políticas de acceso icono de marca de selección

Aunque un rol de nivel de cuenta otorga a un usuario permisos particulares sobre instancias de servicio de forma predeterminada, los roles también se pueden asignar sobre una instancia de servicio determinada. Por ejemplo, un Editor de una cuenta (que tiene la capacidad de ver, crear y suprimir instancias, pero no la capacidad de asignar roles) se puede pasar a Administrador de una instancia de servicio determinada, por lo que se le permite asignar roles dentro de esa instancia de servicio.

Los roles de servicio se pueden aplicar a los tres objetos de primera clase dentro de una instancia de servicio: la instancia como un todo, claves particulares y conjuntos de claves. Al igual que los roles de cuenta tienen permisos sobre instancias de forma predeterminada, también los gestores de instancias tienen permisos sobre claves y conjuntos de claves de forma predeterminada. Sin embargo, estos permisos se pueden asignar de forma más precisa cuando sea necesario, por ejemplo, dar a un usuario el rol de Gestor sobre sólo una clave o un anillo de claves en particular y un nivel menor de permiso sobre la instancia en su conjunto.

Los roles de servicio se pueden asignar por instancia o para todas las instancias de una cuenta.

Funciones de las instancias de servicio

Tenga en cuenta que los permisos incluidos en los roles son aditivos. Un Gestor, por ejemplo, tiene todos los permisos que tiene un Lector y más. La excepción es el rol KeyPurge, que incluye la acción kms.secrets.purge que no forma parte de ningún otro rol y, por lo tanto, debe establecerse explícitamente.

  • Gestor: Tiene todo el espectro de derechos sobre un objeto determinado (por ejemplo, el gestor de una clave tiene la capacidad de encapsular, desencapsular y suprimir la clave, así como el derecho exclusivo de leer y actualizar políticas de Key Protect como por ejemplo dualAuthDelete, allowedNetwork, allowedIP, entre otras).
  • Escritor: Tiene la mayoría de los mismos derechos que un gestor a la hora de utilizar un objeto (incluyendo la capacidad de recuperar una clave y sus metadatos), pero generalmente no puede suprimir ni inhabilitar el objeto.
  • Lector: Puede utilizar el objeto (por ejemplo, los lectores de claves pueden encapsular y desencapsular una clave), pero no crear, suprimir ni modificar el objeto.
  • Lector Plus: Tiene los mismos derechos que un lector, con la capacidad adicional de recuperar la carga útil de una clave estándar.
  • KeyPurge: Tiene la capacidad de Depurar claves pasadas cuatro horas.
  • KmipAdapterManager: Tiene todos los derechos necesarios para gestionar el acceso a los recursos gobernados a través del protocolo KMIP

La siguiente tabla muestra cómo los roles acceso al servicio se correlacionan con los permisos de Key Protect.

Enumera los roles de acceso al servicio en lo que respecta a los recursos clave de Key Protect
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Crear una clave icono de marca de selección icono de marca de selección
Importar una clave icono de marca de selección icono de marca de selección
Recuperar una clave icono de marca de selección icono de marca de selección icono de marca de selección
Recuperar metadatos de clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Recuperar el total de claves icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Listar claves icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Listar versiones de clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Encapsular una clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Desencapsular una clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Reencapsular una clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Rotar una clave icono de marca de selección icono de marca de selección
Inhabilitar una clave icono de marca de selección
Habilitar una clave icono de marca de selección
Planificar la supresión de una clave icono de marca de selección icono de marca de selección
Cancelar la supresión de una clave icono de marca de selección icono de marca de selección
Suprimir una clave icono de marca de selección
Restaurar una clave icono de marca de selección
Aplicar parche a una clave icono de marca de selección
Sincronizar claves icono de marca de selección icono de marca de selección
Depurar claves después de cuatro horas icono de marca de selección
Enumera los roles de acceso al servicio en lo que respecta a los recursos del llavero de « Key Protect ».
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Crear un conjunto de claves icono de marca de selección icono de marca de selección
Listar conjuntos de claves icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Suprimir un conjunto de claves icono de marca de selección
Enumera los roles de acceso al servicio tal y como se aplican a los recursos de políticas de « Key Protect ».
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Establecer políticas de claves icono de marca de selección
Listar políticas de claves icono de marca de selección
Establecer políticas de instancia icono de marca de selección
Listar políticas de instancia icono de marca de selección
Enumera los roles de acceso al servicio que se aplican a la importación de recursos de tokens
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Crear una señal de importación icono de marca de selección icono de marca de selección
Recuperar una señal de importación icono de marca de selección icono de marca de selección
Enumera los roles de acceso al servicio en lo que respecta a los recursos de registro de Key Protect
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Crear un registro[^services-1] icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Listar los registros de una clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Listar los registros de cualquier clave icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Actualizar un registro[^services-2] icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Sustituir un registro[^services-3] icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección
Suprimir un registro[^services-4] icono de marca de selección icono de marca de selección icono de marca de selección icono de marca de selección

El rol KeyPurge sólo confiere la capacidad de depurar claves y debe considerarse como una adición a otros roles de acceso de servicio, como por ejemplo Gestor.

Enumera los roles de acceso al servicio en lo que respecta a los recursos clave de Key Protect
Acción Lector ReaderPlus Writer Gestor KeyPurge KmipAdapterManager
Lista de adaptadores KMIP icono de marca de selección icono de marca de selección
Crear un adaptador KMIP icono de marca de selección icono de marca de selección
Recuperar un adaptador KMIP icono de marca de selección icono de marca de selección
Borrar un adaptador KMIP icono de marca de selección icono de marca de selección
Lista de objetos KMIP de un adaptador KMIP icono de marca de selección icono de marca de selección
Recuperar un objeto KMIP de un adaptador KMIP icono de marca de selección icono de marca de selección
Borrar un objeto KMIP de un adaptador KMIP icono de marca de selección icono de marca de selección
Lista de certificados de cliente de un adaptador KMIP icono de marca de selección icono de marca de selección
Añadir un certificado de cliente a un adaptador KMIP icono de marca de selección icono de marca de selección
Recuperar un certificado de cliente de un adaptador KMIP icono de marca de selección icono de marca de selección
Eliminar un certificado de cliente de un adaptador KMIP icono de marca de selección icono de marca de selección

Los roles Writer, Reader y ReaderPlus no tienen acceso al protocolo KMIP.

Roles y políticas Cloud Identity and Access Management

Aunque la consola Key Protect permite a los usuarios un control de acceso preciso utilizando estos roles, puede ser útil recordar que estos roles están conectados a las políticas de Cloud Identity and Access Management:

  • nombre de servicio (para Key Protect, siempre kms)
  • id de instancia de servicio
  • id de conjunto de claves
  • tipo de recurso (sólo se da soporte a la key)
  • id de recurso
  • id de cuenta (debe especificarse siempre en la política)

A continuación se muestra un ejemplo de una política devuelta por la API de IAM:

"resources": [
    {
        "attributes": [
            {
                "name": "accountId",
                "value": "$ACCOUNT_ID",
            },
            {
                "name": "serviceName",
                "value": "kms",
            },
            {
                "name": "resourceType",
                "value": "key",
            },
            {
                "name": "resource",
                "value": "$KEY_ID",
            },
            {
                "name": "keyRing",
                "value": "$KEY_RING_ID",
            }
        ]
    }
]

Cualquier combinación de estos atributos se puede aplicar en una política. Si esa política tiene el rol de administrador adjunto, eso significa que cualquier user/service id/access group al que se le haya aplicado esta política puede crear una política que se aplique a un subrecurso del que se le ha otorgado. En otras palabras, todos los usuarios de subadministración sólo pueden tener un acceso igual (exactamente los mismos atributos especificados en su política) o menor (exactamente los mismos atributos especificados en su política y atributos adicionales especificados) que el del administrador padre.

Qué hacer a continuación

Los propietarios y administradores de cuentas pueden invitar a usuarios y establecer políticas de servicio que corresponden a los usuarios pueden realizar acciones de Key Protect.

  • Para obtener más información sobre cómo asignar roles de usuario en la interfaz de usuario de IBM Cloud, consulta « Gestión del acceso a IAM ».