Creación de políticas para controlar el acceso recursos relacionados con gateway de API y de red

Descubra cómo crear políticas para utilizarlas con API Gateway.

Antes de que los usuarios puedan empezar a utilizar el servicio de gateway de API para crear gateways y desplegar API en ellos, como administrador de arrendamiento, tiene que crear una serie de políticas de Oracle Cloud Infrastructure para otorgar acceso a recursos de red y relacionados con gateway de API.

Para otorgar acceso a recursos de red y relacionados con el gateway de API, debe:

Consulte Detalles de gateway de API para obtener más información sobre políticas.

Creación de una política para que los usuarios de gateway de API tengan acceso a recursos relacionados con gateway de API

Si los usuarios de API Gateway definen un nuevo gateway de API y nuevos despliegues de API, tienen que especificar un compartimento para esos recursos relacionados con API Gateway. Los usuarios solo pueden especificar un compartimento al que los grupos a los que pertenecen pueden acceder. Para permitir que los usuarios especifiquen un compartimento, debe crear una política de identidad para otorgar acceso a los grupos.

Para crear una política a fin de que los usuarios tengan acceso a recursos relacionados con gateway de API en el compartimento que poseerá esos recursos:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas. Se muestra una lista de las políticas del compartimento que está viendo.
  3. Seleccione el compartimento que incluirá los recursos relacionados con API Gateway de la lista de la izquierda.
  4. Seleccione Crear política.
  5. Introduzca los siguientes datos:

    • Nombre: nombre significativo de la política (por ejemplo, acme-apigw-developers-manage-access). El nombre debe ser único en todas las políticas de su arrendamiento. No puede cambiarlo más adelante. Evite introducir información confidencial.
    • Descripción: descripción significativa (por ejemplo, Ofrece a los desarrolladores de api-gateway acceso a todos los recursos de acme-apigw-compartment). Puede cambiarla más adelante si desea.
    • Sentencia: la siguiente sentencia de política para que el grupo tenga acceso a todos los recursos relacionados con gateway de API en el compartimento:

      Como Sentencia 1: introduzca la siguiente sentencia de política para que el grupo tenga acceso a todos los recursos relacionados con API Gateway en el compartimento:

      Allow group <group-name> to manage api-gateway-family in compartment <compartment-name>

      Por ejemplo:

      Allow group acme-apigw-developers to manage api-gateway-family in compartment acme-apigw-compartment
    • Etiquetas: si tiene permisos para crear un recurso, también tiene permisos para aplicar etiquetas de formato libre a ese recurso. Free-form Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si desea aplicar etiquetas, omita esta opción o pregunte a un administrador. Puede aplicar etiquetas más tarde.
  6. Seleccione Crear para crear la política que proporcione a los usuarios de API Gateway acceso a recursos relacionados con API Gateway en el compartimento.
Consejo

Normalmente, los gateways y los despliegues de API se crean en el mismo compartimento. Sin embargo, en equipos de desarrollo grandes con muchos desarrolladores de API, puede que le resulte útil crear distintos compartimientos para gateways de API y despliegues de API. De esta forma, podrá otorgar a los distintos grupos de usuarios el acceso adecuado a esos recursos.

Creación de una política para que los usuarios de gateway de API tengan acceso a recursos de red

Si los usuarios de gateway de API definen un nuevo gateway de API, tienen que especificar una VCN y una subred en la que crear el gateway de API. Los usuarios solo pueden especificar VCN y subredes a las que los grupos a los pertenecen tienen acceso. Para permitir que los usuarios especifiquen una VCN y una subred, debe crear una política de identidad para otorgar acceso a los grupos. Además, si desea que los usuarios puedan crear gateways de API pública, la política de identidad debe permitir a los grupos gestionar direcciones IP públicas en el compartimento que incluye los recursos de red.

Para crear una política a fin de que los usuarios de gateway de API tengan acceso a los recursos de red:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas. Se muestra una lista de las políticas del compartimento que está viendo.
  3. Seleccione el compartimento que incluye los recursos de red de la lista de la izquierda.
  4. Seleccione Crear política.
  5. Introduzca los siguientes datos:

    • Nombre: nombre significativo para la política (por ejemplo, acme-apigw-developers-network-access). El nombre debe ser único en todas las políticas de su arrendamiento. No puede cambiarlo más adelante. Evite introducir información confidencial.
    • Descripción: descripción significativa (por ejemplo, Ofrece a los desarrolladores de api-gateway acceso a todos los recursos de red del compartimento acme-network). Puede cambiarla más adelante si desea.
    • Sentencia: la siguiente sentencia de política para que el grupo tenga acceso a los recursos de red en el compartimento (incluida la capacidad de gestionar direcciones IP públicas):

      Allow group <group-name> to manage virtual-network-family in compartment <compartment-name>

      Por ejemplo:

      Allow group acme-apigw-developers to manage virtual-network-family in compartment acme-network
    • Etiquetas: si tiene permisos para crear un recurso, también tiene permisos para aplicar etiquetas de formato libre a ese recurso. Free-form Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si desea aplicar etiquetas, omita esta opción o pregunte a un administrador. Puede aplicar etiquetas más tarde.
  6. Seleccione Crear para crear la política que proporcione a los usuarios de gateway de API acceso a recursos de red y direcciones IP públicas en el compartimento.

Creación de una política para que los usuarios de gateway de API tengan acceso funciones

Cuando los usuarios de API Gateway definen un nuevo gateway de API, una opción consiste en especificar una función sin servidor definida en OCI Functions como backend de API. Los usuarios solo pueden especificar funciones a las que los grupos a los que pertenecen puedan acceder. Si desea permitir que los usuarios especifiquen funciones como backends de API, debe crear una política de identidad para otorgar acceso a los grupos. Tenga en cuenta que, además de esta política para el grupo de usuarios, para que los usuarios puedan especificar funciones como backends de API, también tiene que crear una política para que los gateway de API tengan acceso a OCI Functions (consulte Creación de una política para que los gateways de API tengan acceso a funciones).

Otro motivo para crear una política de identidad que otorgue a los grupos acceso a OCI Functions es que desee permitir que los usuarios utilicen la consola (en lugar de un archivo JSON) para definir una política de solicitud de autenticación y especificar una función de autorizador definida en OCI Functions (consulte Transferencia de tokens a funciones de autorizador para agregar autenticación y autorización a despliegues de API).

Para crear una política a fin de que los usuarios de API Gateway tengan acceso a funciones definidas en OCI Functions:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas. Se muestra una lista de las políticas del compartimento que está viendo.
  3. Seleccione el compartimento que incluye las funciones de la lista de la izquierda.
  4. Seleccione Crear política.
  5. Introduzca los siguientes datos:

    • Nombre: nombre significativo para la política (por ejemplo, acme-apigw-developers-functions-access). El nombre debe ser único en todas las políticas de su arrendamiento. No puede cambiarlo más adelante. Evite introducir información confidencial.
    • Descripción: descripción significativa (por ejemplo, Ofrece a los desarrolladores de api-gateway acceso a todas las funciones de acme-functions-compartment). Puede cambiarla más adelante si desea.
    • Sentencia: siguiente sentencia de política para que el grupo tenga acceso a las funciones del compartimento:

      Allow group <group-name> to use functions-family in compartment <compartment-name>

      Por ejemplo:

      Allow group acme-apigw-developers to use functions-family in compartment acme-functions-compartment
    • Etiquetas: si tiene permisos para crear un recurso, también tiene permisos para aplicar etiquetas de formato libre a ese recurso. Free-form Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si desea aplicar etiquetas, omita esta opción o pregunte a un administrador. Puede aplicar etiquetas más tarde.
  6. Seleccione Crear para crear la política que proporcione a los usuarios de gateway de API acceso a las funciones del compartimento.

Creación de una política para permitir a los usuarios de gateway de API crear asociaciones de certificados

Los usuarios de API Gateway pueden utilizar un recurso de certificado de servicio Certificates para configurar un nombre de dominio personalizado para un gateway de API. Para permitir a los usuarios asociar un recurso de certificado de servicio Certificates a un gateway de API, debe crear una política de identidad para permitir que los grupos a los que pertenecen los usuarios creen asociaciones de certificados.

Para crear una política que permita a los usuarios de API Gateway asociar un recurso de certificado de servicio Certificates a un gateway de API:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas. Se muestra una lista de las políticas del compartimento que está viendo.
  3. Seleccione el compartimento que contiene el gateway de API de la lista de la izquierda.
  4. Seleccione Crear política.
  5. Introduzca los siguientes datos:

    • Nombre: nombre significativo para la política, por ejemplo, acme-apigw-developers-certificate-association. El nombre debe ser único en todas las políticas de su arrendamiento. No puede cambiarlo más adelante. Evite introducir información confidencial.
    • Descripción: descripción significativa (por ejemplo, Gives api-gateway developers the ability to create certificate associations). Puede cambiarla más adelante si desea.
    • Sentencia: la siguiente sentencia de política para permitir que el grupo asocie un recurso de certificado de servicio Certificates a un gateway de API en el compartimento:

      Allow group <group-name> to manage certificate-associations in compartment <compartment-name>

      Por ejemplo:

      Allow group acme-apigw-developers to manage certificate-associations in compartment acme-apigw-compartment
    • Etiquetas: si tiene permisos para crear un recurso, también tiene permisos para aplicar etiquetas de formato libre a ese recurso. Free-form Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si desea aplicar etiquetas, omita esta opción o pregunte a un administrador. Puede aplicar etiquetas más tarde.
  6. Seleccione Crear para crear la política que permita a los usuarios de API Gateway asociar recursos de certificado de servicio de certificados a gateways de API en el compartimento.

Creación de una política para permitir a los usuarios de gateway de API gestionar CA y grupos de autoridades de certificación

Además de la autoridad de certificación (CA) por defecto y el grupo de CA, los usuarios de API Gateway pueden optar por agregar los certificados raíz de otras CA y otros grupos de CA (denominados CA personalizadas y grupos de CA personalizadas) al almacén de confianza de un gateway de API. Para personalizar el almacén de confianza de un gateway de API agregando una CA o un grupo de CA personalizados, los usuarios primero deben crear un recurso de CA o un recurso de grupo de CA en el servicio Certificates. Consulte Customizing Trust Stores for TLS Certificate Verification.

Para permitir que los usuarios agreguen CA personalizadas y grupos de CA personalizados a almacenes de confianza personalizados, debe crear una política de identidad para permitir que los grupos a los que pertenecen los usuarios gestionen las autoridades de certificados en el servicio Certificates.

Para crear una política que permita a los usuarios de API Gateway agregar CA personalizadas y grupos de CA personalizadas a almacenes de confianza personalizados:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas. Se muestra una lista de las políticas del compartimento que está viendo.
  3. Seleccione el compartimento que contiene el gateway de API de la lista de la izquierda.
  4. Seleccione Crear política.
  5. Introduzca los siguientes datos:

    • Nombre: nombre significativo para la política, por ejemplo, acme-apigw-developers-custom-ca-bundle. El nombre debe ser único en todas las políticas de su arrendamiento. No puede cambiarlo más adelante. Evite introducir información confidencial.
    • Descripción: descripción significativa (por ejemplo, Gives api-gateway developers the ability to add custom CAs and CA bundles). Puede cambiarla más adelante si desea.
    • Sentencia: la siguiente sentencia de política para permitir que el grupo agregue CA personalizadas y grupos de CA personalizadas al almacén de confianza personalizado de gateways de API en el compartimento:

      Allow group <group-name> to manage certificate-authority-family in compartment <compartment-name>

      Por ejemplo:

      Allow group acme-apigw-developers to manage certificate-authority-family in compartment acme-apigw-compartment
    • Etiquetas: si tiene permisos para crear un recurso, también tiene permisos para aplicar etiquetas de formato libre a ese recurso. Free-form Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro de si desea aplicar etiquetas, omita esta opción o pregunte a un administrador. Puede aplicar etiquetas más tarde.
  6. Seleccione Crear para crear la política que permita a los usuarios de API Gateway agregar CA personalizadas y grupos de CA personalizadas a almacenes de confianza personalizados.

Creación de una política para que los gateways de API tengan acceso a funciones

Cuando los usuarios de API Gateway definen un nuevo gateway de API, una opción consiste en especificar una función sin servidor definida en OCI Functions como backend de API. Antes de crear el gateway de API, el servicio de gateway de API verifica que el nuevo gateway de API tenga acceso a la función especificada mediante una política de IAM.

Tenga en cuenta que, además de esta política para puertas de enlace de API, para que los usuarios puedan especificar funciones como backends de API, también tiene que crear una política para que los usuarios tengan acceso a OCI Functions (consulte Creación de una política para que los usuarios de gateway de API tengan acceso a funciones).

Para crear una política a fin de que los gateway de API tengan acceso a las funciones definidas en OCI Functions:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Cree una nueva política para que los gateways de API tengan acceso a las funciones definidas en OCI Functions:

    1. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas.
    2. Seleccione el compartimento que contiene los recursos relacionados con la función a los que desea otorgar acceso. Si los recursos están en diferentes compartimentos, seleccione un compartimento principal común (por ejemplo, el compartimento raíz del arrendamiento).
    3. Siga las instrucciones incluidas en Para crear una política y asigne un nombre a la política (por ejemplo, acme-apigw-gateways-functions-policy).
    4. Introduzca una sentencia de política para que los gateway de API tengan acceso al compartimento que contiene funciones definidas en OCI Functions:

      ALLOW any-user to use functions-family in compartment <functions-compartment-name> where ALL {request.principal.type= 'ApiGateway', request.resource.compartment.id = '<api-gateway-compartment-OCID>'}

      donde:

      • <functions-compartment-name> es el nombre del compartimento que contiene las funciones que desea utilizar como backends para gateways de API.
      • <api-gateway-compartment-OCID> es el OCID del compartimento que contiene los gateways de API que desea que tengan acceso a las funciones.

      Por ejemplo:

      ALLOW any-user to use functions-family in compartment acme-functions-compartment where ALL {request.principal.type= 'ApiGateway', request.resource.compartment.id = 'ocid1.compartment.oc1..aaaaaaaa7______ysq'}
    5. Seleccione Crear para crear la política que proporcione a los gateways de API acceso las funciones definidas en OCI Functions.

Creación de una política para otorgar a los gateways de API acceso a las credenciales almacenadas como secretos en el servicio Vault

Si los usuarios de API Gateway definen un gateway de API que almacena en caché los datos de respuesta en un servidor de caché externo (como un servidor Redis), las credenciales para autenticarse con el servidor de caché se deben almacenar en el servicio Vault. Del mismo modo, si los usuarios de API Gateway definen un gateway de API que accede al punto final de introspección de un servidor de autorización para validar tokens, las credenciales para autenticarse con el servidor de autorización se deben almacenar en el servicio Vault. Para permitir que los gateways de API se autentiquen con el servidor de caché o el servidor de autorización, debe crear una política que otorgue a los gateways de API acceso a secretos en el servicio Vault.

Para crear una política para proporcionar a los gateways de API acceso a secretos en el servicio Vault:

  1. Conéctese a la consola como administrador del arrendamiento.
  2. Cree un nuevo grupo dinámico que incluya uno o más gateways de API:

    1. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Dominios. En Dominio de identidad, seleccione Grupos dinámicos.
    2. Siga las instrucciones en Para crear un grupo dinámico y, por ejemplo, acme-apigw-dyn-grp.
    3. Al especificar una regla para el grupo dinámico, tenga en cuenta los siguientes ejemplos:

      • Si desea que todos los gateways de API de un compartimento puedan acceder a los secretos, introduzca una regla similar a la siguiente que agregue todos los gateways de API del compartimento con el OCID del compartimento especificado al grupo dinámico:

        ALL {resource.type = 'ApiGateway', resource.compartment.id = 'ocid1.compartment.oc1..aaaaaaaa23______smwa'}
      • Si desea que un gateway de API específico pueda acceder a los secretos, introduzca una regla similar a la siguiente que agregue el gateway de API con el OCID especificado al grupo dinámico:

        ALL {resource.type = 'ApiGateway', resource.id = 'ocid1.apigateway.oc1.iad.aaaaaaaab______hga'}
    4. Seleccione Create Dynamic Group.

    Después de crear un grupo dinámico que incluya uno o más gateways de API, ahora puede crear una política para otorgar al grupo dinámico acceso a uno o más secretos.

  3. Cree una nueva política para otorgar al grupo dinámico acceso a uno o más secretos en el servicio Vault:

    1. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas.
    2. Siga las instrucciones en Para crear una política y asigne un nombre a la política (por ejemplo, acme-apigw-dyn-grp-policy).
    3. Al especificar una sentencia de política, tenga en cuenta los siguientes ejemplos:

      • Si desea que los gateways de API de acme-apigw-dyn-grp puedan acceder a todos los secretos de un compartimento, introduzca una sentencia de política similar a la siguiente:

        allow dynamic-group acme-apigw-dyn-grp to read secret-bundles in compartment acme-apigw-compartment
      • Si desea que los gateways de API en acme-apigw-dyn-grp puedan acceder a un secreto específico, introduzca una sentencia de política similar a la siguiente:

        allow dynamic-group acme-apigw-dyn-grp to read secret-bundles in compartment acme-apigw-compartment where target.secret.id='ocid1.vaultsecret.oc1.iad.amaaaaaa______qia'
    4. Seleccione Crear para crear la nueva política que proporcione a los gateways de API del grupo dinámico acceso a los secretos especificados en el servicio Vault.