Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-11-25 GMT+08:00

Creación de una política personalizada

Puede crear políticas personalizadas para complementar las políticas definidas por el sistema e implementar un control de acceso más refinado.

Puede crear políticas personalizadas de cualquiera de las siguientes maneras:

  • Editor visual: seleccione un servicio en la nube, especifique acciones y recursos y añada condiciones de solicitud. No es necesario tener conocimiento de la sintaxis JSON.
  • JSON: Cree una política en formato JSON desde cero o basada en una política existente.

En esta sección se describe cómo crear directivas personalizadas en la página Permissions > Policies/Roles. También puede crear directivas personalizadas durante la autorización (consulte Figura 1) sin finalizar la operación actual.

Figura 1 Creación de una política durante la autorización

Creación de una política personalizada en el editor visual

  1. Inicie sesión en la consola de IAM.
  2. En la consola de IAM, seleccione Permissions > Policies/Roles en el panel de navegación y haga clic en Create Custom Policy en la esquina superior derecha.

    Figura 2 Creación de una política personalizada

  3. Ingrese un nombre para la política.

    Figura 3 Introducir un nombre de política

  4. Seleccione Visual editor para Policy View.
  5. Establezca el contenido de la política.

    1. Seleccione Allow o Deny.
    2. Seleccione un servicio en la nube.
      • Solo se puede seleccionar un servicio en la nube para cada bloque de permisos. Para configurar permisos para varios servicios en la nube, haga clic en Add Permissions, o cambie a la vista JSON (consulte Creación de una política personalizada en la vista JSON).
      • Una política personalizada puede contener permisos para servicios globales o a nivel de proyecto. Para definir los permisos necesarios para acceder a los servicios globales y a nivel de proyecto, incluya los permisos en dos políticas separadas para la autorización refinada.
    3. Seleccionar acciones.
    4. (Opcional) Seleccione todos los recursos o seleccione recursos específicos especificando sus rutas.
      Los servicios en la nube que permiten la autorización para recursos específicos incluyen: Object Storage Service (OBS), Intelligent EdgeFabric (IEF), Data Lake Insight (DLI), Graph Engine Service (GES), FunctionGraph, Distributed Message Service (DMS), IoT Device Access (IoTDA), Key Management Service (KMS), Autonomous Driving Cloud Service (Octopus), and Data Warehouse Service (DWS). Para obtener más información, consulte Servicios en la nube soportados por IAM.
      Tabla 1 Tipo de recurso

      Parámetro

      Descripción

      Specific

      Permisos para recursos específicos. Por ejemplo, para definir permisos para buckets cuyos nombres comiencen por TestBucket especifique la ruta del recurso del bucket como OBS:*:*:bucket:TestBucket*.

      NOTA:
      • Especificación de recursos de bucket

      Formato: "OBS:*:*:bucket:Bucket name".

      Para los recursos del bucket, IAM genera automáticamente el prefijo de la ruta del recurso: obs:*:*:bucket:. Para la ruta de un bucket específico, agregue el bucket name al final. También puede utilizar un carácter comodín (*) para indicar cualquier bucket. Por ejemplo, obs:*:*:bucket:* indica cualquier bucket OBS.

      • Especificación de recursos de objeto

      Formato: "OBS:*:*:object:Bucket name or object name".

      Para los recursos de objetos, IAM genera automáticamente el prefijo de la ruta de recursos: obs:*:*:object:. Para la ruta de acceso de un objeto específico, agregue el bucket name/object name al final de la ruta de acceso del recurso. También puede utilizar un carácter comodín (*) para indicar cualquier objeto de un bucket. Por ejemplo, obs:*:*:object:my-bucket/my-object/* indica cualquier objeto en el directorio my-object del bucket de my-bucket.

      All

      Permisos para todos los recursos.

    5. (Opcional) Agregue condiciones de solicitud especificando claves de condición, operadores y valores.
      Tabla 2 Parámetros de condición

      Name

      Description

      Condition Key

      Clave en el elemento Condition de una instrucción. Hay claves de condición globales y de nivel de servicio. Las claves de condición globales (comenzando con g:) están disponibles para las operaciones de todos los servicios, mientras que las claves de condición de nivel de servicio (comenzando con un nombre de abreviatura de servicio como obs:) están disponibles solo para las operaciones del servicio correspondiente. Para obtener más información, consulte la guía del usuario del servicio en la nube correspondiente, por ejemplo, Condiciones de solicitud de OBS.

      Operator

      Se utiliza junto con una clave de condición y un valor de condición para formar una sentencia de condición completa.

      Value

      Se utiliza junto con una clave de condición y un operador que requiere una palabra clave, para formar una sentencia de condición completa.

      Figura 4 Adición de una condición de solicitud
      Tabla 3 Claves de condición globales

      Global Condition Key

      Tipo

      Descripción

      g:CurrentTime

      Time

      Tiempo en la que se recibe una solicitud de autenticación. El tiempo se expresa en el formato definido por ISO 8601, por ejemplo, 2012-11-11T23:59:59Z

      g:DomainName

      String

      Nombre de cuenta.

      g:MFAPresent

      Boolean

      Si se obtiene un token a través de la autenticación MFA.

      g:MFAAge

      Number

      Período de validez de un token obtenido mediante autenticación MFA. Esta condición debe usarse junto con g:MFAPresent.

      g:ProjectName

      String

      Nombre del proyecto.

      g:ServiceName

      String

      Nombre del servicio.

      g:UserId

      String

      ID de usuario de IAM.

      g:UserName

      String

      Nombre de usuario de IAM.

  6. (Opcional) Cambie a la vista JSON y modifique el contenido de la política en el formato JSON.

    Si el contenido de la política modificada es incorrecto, vuelva a comprobarlo y modificarlo o haga clic en Reset para cancelar las modificaciones.

  7. (Opcional) Para agregar otro bloque de permisos a la política, haga clic en Add Permissions. También puede hacer clic en el icono de (+) más a la derecha de un bloque de permisos existente para clonar sus permisos.
  8. (Opcional) Introduzca una breve descripción de la política.
  9. Haga clic en OK.
  10. Adjunte la política a un grupo de usuarios. Los usuarios del grupo heredan los permisos definidos en esta política.

    Puede adjuntar directivas personalizadas a un grupo de usuarios del mismo modo que adjuntar directivas definidas por el sistema. Para más detalles, consulte Creación de un grupo de usuarios y asignación de permisos.

Creación de una política personalizada en la vista JSON

  1. Inicie sesión en la consola de IAM.
  2. En la consola de IAM, seleccione Permissions > Policies/Roles en el panel de navegación y haga clic en Create Custom Policy en la esquina superior derecha.

    Figura 5 Creación de una política personalizada

  3. Ingrese un nombre para la política.

    Figura 6 Introducir un nombre de política

  4. Seleccione JSON para Policy View.
  5. (Opcional) Haga clic en Select Existing Policy/Role y seleccione una política/función para usarlo como plantilla, por ejemplo, seleccione EVS FullAccess.

    Si selecciona varias directivas, todas deben tener el mismo ámbito, es decir, Global services o Project-level services. Para definir los permisos necesarios para acceder a los servicios globales y a nivel de proyecto, incluya los permisos en dos directivas personalizadas independientes para la autorización refinada.

  6. Haga clic en OK.
  7. Modifique la instrucción en la plantilla.

    • Effect: Establezca como Allow o Deny.
    • Action: Ingrese las acciones que aparecen en la tabla de acciones de la API (consulte Figura 7) del servicio EVS, por ejemplo, evs:volumes:create.
      Figura 7 Acciones de API
      • La versión de cada política personalizada se fija en 1.1.
      • Para obtener más información sobre las acciones de la API admitidas por cada servicio, consulta Permisos de sistema.

  8. (Opcional) Introduzca una breve descripción de la política.
  9. Haga clic en OK. Si se muestra la lista de políticas, la política se crea correctamente. Si se muestra un mensaje que indica contenido de política incorrecto, modifique la política.
  10. Adjunte la política a un grupo de usuarios. Los usuarios del grupo heredan los permisos definidos en esta política.

    Puede adjuntar directivas personalizadas a un grupo de usuarios del mismo modo que adjuntar directivas definidas por el sistema. Para más detalles, consulte Creación de un grupo de usuarios y asignación de permisos.