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.
Centro de ayuda/ FunctionGraph/ Referencia de la API/ Políticas de permisos y acciones admitidas
Actualización más reciente 2022-11-07 GMT+08:00

Políticas de permisos y acciones admitidas

En este capítulo se describe la gestión detallada de permisos para su FunctionGraph. Si su cuenta no necesita usuarios individuales de Administración de Identidad y Acceso (IAM), puede omitir este capítulo.

De forma predeterminada, los nuevos usuarios de IAM no tienen ningún permiso asignado. Debe agregar un usuario a uno o más grupos y asignar políticas de permisos a estos grupos. A continuación, el usuario hereda los permisos de los grupos a los que pertenece. Este proceso se llama autorización. Después de la autorización, el usuario puede realizar operaciones especificadas en FunctionGraph en función de los permisos.

Puede conceder permisos a los usuarios mediante roles y políticas. Los roles son un tipo de mecanismo de autorización de grano grueso que define permisos relacionados con las responsabilidades del usuario. Las políticas definen permisos basados en API para operaciones en recursos específicos bajo ciertas condiciones, lo que permite un control de acceso más detallado y seguro de los recursos en la nube.

Se recomienda la autorización basada en políticas si desea permitir o denegar el acceso a una API.

Una cuenta en la nube tiene todos los permisos necesarios para llamar a todas las API, pero los usuarios de IAM deben tener los permisos requeridos específicamente asignados. Los permisos necesarios para llamar a una API están determinados por las acciones admitidas por la API. Solo los usuarios a los que se les han concedido permisos pueden llamar a la API correctamente.

Acciones admitidas

Hay dos tipos de políticas: las definidas por el sistema y las personalizadas. Si los permisos preestablecidos en el sistema no cumplen con sus requisitos, puede crear políticas personalizadas y aplicar estas políticas a grupos de usuarios para un control de acceso refinado. Las operaciones admitidas por las políticas son específicas de las API. Los siguientes son conceptos comunes relacionados con las políticas:

  • Permisos: Definido por acciones en una política personalizada.
  • APIs: APIs REST que pueden ser llamadas por un usuario al que se le han concedido permisos específicos.
  • Acciones: Operaciones específicas que están permitidas o denegadas.
  • Proyectos IAM y proyectos de empresa: Tipo de proyectos para los que una acción entrará en vigor. Las políticas que contienen acciones tanto para IAM como para proyectos empresariales pueden utilizarse y surtir efecto tanto para IAM como para Enterprise Management. Las políticas que solo contienen acciones para proyectos de IAM se pueden usar y solo tienen efecto para IAM. Para obtener más información sobre las diferencias entre IAM y proyectos empresariales, consulte ¿Cuáles son las diferencias entre IAM y Enterprise Management?

    La marca de verificación (√) y el símbolo de cruz (x) indican respectivamente que una acción tiene efecto o no tiene efecto para el tipo correspondiente de proyectos.

Tabla 1 enumera las acciones de la API admitidas por FunctionGraph.

Tabla 1 Acciones de FunctionGraph

Permiso

API

Acción

Proyectos de IAM

Proyecto empresarial

Consultar una lista de funciones

GET /v2/{project_id}/fgs/functions

FunctionGraph:function:list

Consultar los metadatos de una función

GET /v2/{project_id}/fgs/functions/{function_urn}/config

FunctionGraph:function:getConfig

Consultar el código de una función

GET /v2/{project_id}/fgs/functions/{function_urn}/code

FunctionGraph:function:getCode

Creación de una función

POST /v2/{project_id}/fgs/functions

FunctionGraph:function:create

Eliminar una función o versión de función

DELETE /v2/{project_id}/fgs/functions/{function_urn}

FunctionGraph:function:delete

Modificar el código de una función

PUT /v2/{project_id}/fgs/functions/{function_urn}/code

FunctionGraph:function:updateCode

Modificar los metadatos de una función

PUT /v2/{project_id}/fgs/functions/{function_urn}/config

FunctionGraph:function:updateConfig

Publicación de una versión de función

POST /v2/{project_id}/fgs/functions/{function_urn}/versions

FunctionGraph:function:createVersion

Consultar las versiones de una función

GET /v2/{project_id}/fgs/functions/{function_urn}/versions

FunctionGraph:function:listVersion

Crear un alias para una versión de función

POST /v2/{project_id}/fgs/functions/{function_urn}/aliases

FunctionGraph:function:createAlias

Modificación de la información de alias sobre una versión de función

PUT /v2/{project_id}/fgs/functions/{function_urn}/aliases/{alias_name}

FunctionGraph:function:updateAlias

Eliminar un alias de una versión de función

DELETE /v2/{project_id}/fgs/functions/{function_urn}/aliases/{alias_name}

FunctionGraph:function:deleteAlias

Consultar la información de alias sobre una versión de función

GET /v2/{project_id}/fgs/functions/{function_urn}/aliases/{alias_name}

FunctionGraph:function:getAlias

Consultar todos los alias de versión de una función

GET /v2/{project_id}/fgs/functions/{function_urn}/aliases

FunctionGraph:function:listAlias

Consultar todos los activadores de una función

GET /v2/{project_id}/fgs/triggers/{function_urn}

FunctionGraph:trigger: listSpecifiedFunctionTriggers

Consultar la información acerca de un activador

GET /v2/{project_id}/fgs/triggers/{function_urn}/{trigger_type_code}/{trigger_id}

FunctionGraph:trigger:get

Eliminar todos los activadores de una función

DELETE /v2/{project_id}/fgs/triggers/{function_urn}

FunctionGraph:trigger: deleteSpecifiedFunctionTriggers

Creación de un activador

POST /v2/{project_id}/fgs/triggers/{function_urn}

FunctionGraph:trigger:create

Eliminación de un activador

DELETE /v2/{project_id}/fgs/triggers/{function_urn}/{trigger_type_code}/{trigger_id}

FunctionGraph:trigger:delete

Implementación de invocación de función síncrona

POST /v2/{project_id}/fgs/functions/{function_urn}/invocations

FunctionGraph:function:invoke

Implementación de invocación de función asincrónica

POST /v2/{project_id}/fgs/functions/{function_urn}/invocations-async

FunctionGraph:function:invokeAsync