Establecimiento de autorizaciones de servicio a servicio para el servicio de copia de seguridad

Establece autorizaciones entre servicios y roles de usuario para « IBM Cloud Backup for VPC» con el fin de detectar etiquetas de recursos y crear instantáneas de copia de seguridad de volúmenes en bloque y recursos compartidos de archivos.

Visión general

Para que el servicio IBM Cloud Backup for VPC funcione, debe proporcionar una autorización para el servicio. En una autorización, se concede al servicio de origen acceso al servicio de destino. Los roles que seleccione definen el nivel de acceso para el servicio de origen. El servicio de destino es aquel al que se concede permiso para que el servicio de origen acceda a él, en función de los roles que se asignen. Un servicio de origen puede estar en la misma cuenta en la que se ha creado la autorización o en otra cuenta. El servicio de destino siempre está en la cuenta donde se crea la autorización.

Para crear una política de respaldo y que las tareas de respaldo se ejecuten correctamente, el servicio de respaldo debe estar autorizado para trabajar conBlock Storage for VPC, Instantáneas para VPC yVirtual Server for VPC servicios.

Los administradores de cuentas empresariales que deseen crear una política de copias de seguridad para su cuenta empresarial y sus subcuentas también necesitan autorización. En concreto, el servicio de copias de seguridad de la cuenta de empresa debe estar autorizado para interactuar con el servicio de copias de seguridad de las subcuentas.

Para crear una política de copia de seguridad y que los trabajos de copia de seguridad se ejecuten correctamente para los archivos compartidos, el servicio de copia de seguridad debe estar autorizado para trabajar con File Storage for VPC.

Para obtener más información sobre las autorizaciones, consulte Utilización de autorizaciones para otorgar acceso entre servicios.

Si configura las autorizaciones de servicio incorrectamente, el servicio de copia de seguridad no puede crear las políticas de copia de seguridad. Para obtener más información, consulte el tema de solución de problemas ¿Cuál es la causa del error de autorización de servicio cuando intento crear una política de copia de seguridad?

Creando políticas de autorización en la consola.

Creación de autorizaciones para copias de seguridad por volumen a nivel de cuenta

Para crear una política de autorización de servicio a servicio, siga este procedimiento:

  1. En la consola de IBM Cloud, ve a Gestionar > Acceso (IAM).
  2. En el panel lateral, seleccione Autorizaciones.
  3. En la página Gestionar autorizaciones, pulse Crear.
  4. En la sección Origen, seleccione la Cuenta de origen. Cuando esté configurando la autorización para el servicio de copia de seguridad en su cuenta, seleccione Esta cuenta. Pulse Siguiente.
  5. Para el servicio de origen, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. En la lista, seleccione Tipo de recurso.
    4. En el siguiente campo, seleccione IBM Cloud Backup for VPC.
    5. Pulse Siguiente.
  6. Para el servicio de destino, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. Pulse Tipo de recurso. Selecciona uno de los siguientes servicios. Debe crear la autorización para todos ellos.
Autorizaciones 'servicio a servicio'
Servicio de origen - tipo de recurso Servicio de destino - tipo de recurso Rol de usuario de servicio dependiente
IBM Cloud Backup for VPC Block Storage for VPC Operador
IBM Cloud Backup for VPC Block Storage Snapshots for VPC Editor
IBM Cloud Backup for VPC Instantáneas de varios volúmenes para VPC Editor
IBM Cloud Backup for VPC Virtual Server for VPC Operador

(Opcional) Para limitar el alcance de la autorización a instancias concretas de servidores virtuales, haz clic en «Añadir una condición» y selecciona «ID de instancia» en la lista de atributos. A continuación, selecciona una instancia concreta del menú.

Limitar el alcance de la autorización a instancias concretas provoca errores en las copias de seguridad de los volúmenes que están asociados a otras instancias. Si añades una condición para « Virtual Server for VPC », debes crear una política de autorización independiente para cada instancia cuyos volúmenes requieran una copia de seguridad. Para obtener más información, consulta la sección sobre resolución de problemas relacionados con el ámbito de autorización.

  1. Pulse Siguiente.
  2. Seleccione el rol. Para obtener más información, consulta la tabla correspondiente al rol en cuestión.
  3. Pulse Revisar e inspeccione sus opciones.
  4. Pulse Autorizar.
  5. Cuando vuelva a la página Gestionar autorizaciones, pulse Crear de nuevo y siga los mismos pasos para configurar las autorizaciones para los servicios restantes.

Creación de autorizaciones para copias de seguridad de archivos compartidos a nivel de cuenta

Para crear una política de autorización de servicio a servicio, siga este procedimiento:

  1. En la consola de IBM Cloud, ve a Gestionar > Acceso (IAM).
  2. En el panel lateral, seleccione Autorizaciones.
  3. En la página Gestionar autorizaciones, pulse Crear.
  4. En la sección Origen, seleccione la Cuenta de origen. Cuando esté configurando la autorización para el servicio de copia de seguridad en su cuenta, seleccione Esta cuenta. Pulse Siguiente.
  5. Para el servicio de origen, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. En la lista, seleccione Tipo de recurso.
    4. En el siguiente campo, seleccione IBM Cloud Backup for VPC.
    5. Pulse Siguiente.
  6. Para el servicio de destino, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. Pulse Tipo de recurso. Selecciona File Storage for VPC.
  7. Pulse Siguiente.
  8. Selecciona los roles: Editor, Operador de compartir instantáneas.
  9. Pulse Revisar e inspeccione sus opciones.
  10. Pulse Autorizar.

Creación de autorizaciones entre cuentas para las copias de seguridad gestionadas por la cuenta Enterprise desde la cuenta secundaria

Para que un administrador de Enterprise pueda gestionar las copias de seguridad de forma centralizada, las subcuentas deben autorizar al servicio de copias de seguridad de la cuenta de Enterprise a interactuar con sus recursos. El administrador de la cuenta secundaria puede seguir estos pasos para crear las autorizaciones de forma local en su cuenta.

  1. En la consola de IBM Cloud, ve a Gestionar > Acceso (IAM).
  2. En el panel lateral, seleccione Autorizaciones.
  3. En la página Gestionar autorizaciones, pulse Crear.
  4. En la sección Origen, seleccione la Cuenta de origen. Cuando esté configurando la autorización para el servicio de copia de seguridad de la cuenta de empresa, seleccione Cuenta específica y especifique el ID de la cuenta de empresa. Pulse Siguiente.
  5. Para el servicio de origen, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. En la lista, seleccione Tipo de recurso.
    4. En el siguiente campo, seleccione IBM Cloud Backup for VPC.
    5. Pulse Siguiente.
  6. Para el servicio de destino, seleccione Servicios de infraestructura de VPC en la lista.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. Pulse Tipo de recurso. Seleccione uno de los servicios en la Tabla 2.
Autorizaciones de servicio a servicio para la empresa
Servicio de origen - tipo de recurso Servicio de destino - tipo de recurso Rol de usuario de servicio dependiente
IBM Cloud Backup for VPC Block Storage for VPC Operador
IBM Cloud Backup for VPC Block Storage Snapshots for VPC Editor
IBM Cloud Backup for VPC Instantáneas de varios volúmenes para VPC Editor
IBM Cloud Backup for VPC Virtual Server for VPC Operador
IBM Cloud Backup for VPC IBM Cloud Backup for VPC Editor
IBM Cloud Backup for VPC File Storage for VPC Editor, Operador de Share Snapshot
  1. Pulse Siguiente.
  2. Seleccione el rol. Para obtener más información, consulta la tabla 2 para conocer la función correspondiente.
  3. Pulse Revisar e inspeccione sus opciones.
  4. Pulse Autorizar.
  5. Cuando vuelva a la página Gestionar autorizaciones, pulse Crear de nuevo y siga los mismos pasos para configurar las autorizaciones para los servicios restantes.

Creación de plantillas de autorización entre cuentas para las copias de seguridad gestionadas por Enterprise

Gracias a las plantillas de autorización, el administrador de la cuenta Enterprise puede crear una política de autorización y asignársela a las cuentas secundarias. A continuación, la autorización se aplica a esas cuentas sin que el administrador tenga que iniciar sesión en cada una de las cuentas secundarias por separado.

  1. En la consola de IBM Cloud, ve a Gestionar > Acceso (IAM) > Empresa > Plantillas.
  2. Seleccione Autorizaciones y haga clic en Crear.
  3. Introduzca un nombre y una descripción para la plantilla de autorización que describa su finalidad para los usuarios de la empresa.
  4. Introduzca una descripción para la política de autorización gestionada por la empresa que describa su finalidad para los usuarios de cuentas secundarias.
  5. Pulse Crear.

A continuación, complete los siguientes pasos para crear las reglas de autorización:

  1. Vaya a Autorización para especificar los detalles de la política de autorización.
  2. Seleccione la cuenta desde la que el servicio de origen solicita acceso a otro servicio. Seleccione Cuenta(s) asignada(s). Cuando más adelante asignes la plantilla de autorización a una cuenta secundaria, el campo «cuenta de origen» se configurará automáticamente para que coincida con la cuenta secundaria que alberga el recurso al que se accede.
  3. A continuación, seleccione el servicio y los recursos de origen.
    1. Selecciona Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    2. Seleccione el ámbito pulsando Recursos específicos.
    3. Haz clic en Seleccionar un atributo.
    4. En la lista, seleccione Tipo de recurso.
    5. En el siguiente campo, seleccione IBM Cloud Backup for VPC.
  4. Para el servicio de destino, seleccione Servicios de infraestructura de VPC en la lista.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. En la lista, seleccione Tipo de recurso. Selecciona uno de los servicios de la siguiente tabla. Debe crear la autorización para todos ellos.
Autorizaciones de servicio a servicio para la empresa
Servicio de origen - tipo de recurso Servicio de destino - tipo de recurso Rol de usuario de servicio dependiente
IBM Cloud Backup for VPC Block Storage for VPC Operador
IBM Cloud Backup for VPC Block Storage Snapshots for VPC Editor
IBM Cloud Backup for VPC Instantáneas de varios volúmenes para VPC Editor
IBM Cloud Backup for VPC Virtual Server for VPC Operador
IBM Cloud Backup for VPC IBM Cloud Backup for VPC Editor
IBM Cloud Backup for VPC File Storage for VPC Editor, Operador de Share Snapshot
  1. Pulse Siguiente.
  2. Seleccione el rol. Para obtener más información, consulta la tabla correspondiente al rol en cuestión.
  3. Pulse Revisar e inspeccione sus opciones. A continuación, pulse Guardar.
  4. Confirma los cambios y asigna la plantilla a las cuentas secundarias. Repita los pasos para crear plantillas de autorización para todos los servicios.

Crear autorización para Event Notifications

Para crear una política de autorización de servicio a servicio para Event Notifications, siga este procedimiento:

  1. En la consola de IBM Cloud, ve a Gestionar > Acceso (IAM).
  2. En el panel lateral, seleccione Autorizaciones.
  3. En la página Gestionar autorizaciones, pulse Crear.
  4. En la sección Origen, seleccione la Cuenta de origen. Cuando esté configurando la autorización para el servicio de copia de seguridad en su cuenta, seleccione Esta cuenta. Pulse Siguiente.
  5. Para el servicio de origen, seleccione Servicios de infraestructura de VPC en la lista. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haga clic en Seleccionar un atributo y, en la lista, seleccione Tipo de recurso.
    3. En el siguiente campo, seleccione IBM Cloud Backup for VPC.
    4. Pulse Siguiente.
  6. Selecciona Event Notifications como servicio de destino. Pulse Siguiente.
    1. Seleccione el ámbito pulsando Recursos específicos.
    2. Haz clic en Seleccionar un atributo.
    3. Haga clic en serviceInstance.
    4. En el campo siguiente, seleccione la cadena igual a.
    5. En el siguiente campo, seleccione la instancia de servicio Event Notifications que desea autorizar.
  7. Seleccione el rol Gestor de origen de sucesos.
  8. Pulse Revisar e inspeccione sus opciones.
  9. Pulse Autorizar.

Creación de políticas de autorización desde la CLI

Creación de autorizaciones para copias de seguridad por volumen a nivel de cuenta

Para utilizar Backup for VPC en tu cuenta con el fin de crear políticas y planes, así como para ejecutar tareas de copia de seguridad de volúmenes de almacenamiento en bloque, crea las siguientes autorizaciones de servicio a servicio:

  • backup-policy (origen) a instance (destino) con el rol Operador
  • backup-policy (origen) a volume (destino) con el rol Operador
  • backup-policy (origen) a snapshot (destino) con el rol Editor
  • backup-policy (origen) a snapshot-consistency-group (destino) con el rol Editor
  1. Cree cuatro archivos JSON con la información siguiente para las políticas de autorización.

Mantén los valores de los comodines ("*") en los ejemplos. Sustituir los comodines por identificadores de recursos específicos limita el alcance de la autorización y provoca errores en las copias de seguridad. Para obtener más información, consulta la sección sobre resolución de problemas relacionados con el ámbito de autorización.

  • Servicio de instancia:
    {
      "type": "authorization",
      "subject": {
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "value": "is"},
               {"name": "resourceType", "value": "backup-policy"}]}},
      "roles": [
          {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}],
      "resources": [
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "operator": "stringEquals", "value": "is"},
               {"name": "instanceId", "operator": "stringEquals", "value": "*"}]}]
      }
    
  • Block Storage Servicio de volumen:
    {
      "type": "authorization",
      "subject": {
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "value": "is"},
               {"name": "resourceType", "value": "backup-policy"}]}},
      "roles": [
          {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}],
      "resources": [
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "operator": "stringEquals", "value": "is"},
               {"name": "volumeId", "operator": "stringEquals", "value": "*"}]}]
    }
    
  • Block Storage Servicio de instantáneas:
    {
      "type": "authorization",
      "subject": {
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "value": "is"},
               {"name": "resourceType", "value": "backup-policy"}]}},
      "roles": [
          {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}],
      "resources": [
          {"attributes": [
               {"name": "accountId", "value": "ACCOUNT_ID"},
               {"name": "serviceName", "operator": "stringEquals", "value": "is"},
               {"name": "snapshotId", "operator": "stringEquals", "value": "*"}]}]
    }
    
  • Grupo de consistencia de instantánea:
    {
     "type": "authorization",
     "subject": {
         {"attributes": [
              {"name": "accountId", "value": "ACCOUNT_ID"},
              {"name": "serviceName", "value": "is"},
              {"name": "resourceType", "value": "backup-policy"}]}},
     "roles": [
         {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}],
     "resources": [
         {"attributes": [
              {"name": "accountId", "value": "ACCOUNT_ID"},
              {"name": "serviceName", "operator": "stringEquals", "value": "is"},
              {"name": "snapshotConsistencyGroupId", "operator": "stringEquals", "value": "*"}]}]
    }
    
  1. A continuación, utilice los archivos JSON para ejecutar el siguiente mandato de CLI.
    ibmcloud iam authorization-policy-create --file ~/Documents/policy.json
    

Para obtener más información sobre todos los parámetros que están disponibles para este mandato, consulte ibmcloud iam authorization-policy-create.

Creación de autorizaciones para copias de seguridad de archivos compartidos a nivel de cuenta

Para crear una política de autorización de servicio a servicio para copias de seguridad compartidas File Storage for VPC, utilice el comando authorization-policy-create.

ibmcloud iam authorization-policy-create is is "Share Snapshot Operator",Editor --source-resource-type backup-policy --target-resource-type share

Para obtener más información sobre todos los parámetros que están disponibles para este mandato, consulte ibmcloud iam authorization-policy-create.

Creación de plantillas de autorización entre cuentas para las copias de seguridad gestionadas por Enterprise

Los administradores de cuentas corporativas pueden crear y asignar plantillas de políticas de autorización a las cuentas secundarias para gestionar las autorizaciones de forma centralizada. Para crear una plantilla de política de autorización que se utilice con las políticas de copia de seguridad en todas las cuentas secundarias de la empresa, sigue estos pasos.

  1. Para obtener el ID de la cuenta raíz de la empresa, puede ejecutar el siguiente comando.
ibmcloud enterprise show
  1. Cree los archivos JSON que proporcionan la definición de la plantilla de política de autorización. Para obtener más información sobre los atributos que puede utilizar en su archivo JSON, consulte la API de gestión de políticas de IAM.
  • Servicio de instancia:

    {
     "name": "Centralized authorization for Backup service to work with Instances",
     "description": "Grant Operator Role for the Backup service to work with Instances",
     "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
     "policy":{
       "type": "authorization",
       "description": "Grant Operator on VPC Instances",
       "control":{
           "grant":{
             "roles":[
               {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}]
             }},
       "subject":{
           "attributes":[
               {"key": "serviceName", "operator": "stringEquals", "value": "is"},
               {"key": "resourceType", "operator": "stringEquals", "value": "backup-policy"}
             ]},
       "resource":{
           "attributes":[
               {"key": "serviceName", "operator": "stringEquals", "value": "is"},
               {"key": "instanceId", "operator": "stringExists", "value": true}
             ]}}
    }
    
    • Block Storage Servicio de volumen:
    {
         "name": "Centralized authorization for Backup service to work with Block Storage service",
         "description": "Grant Operator Role for the Backup service to work with Block Storage volumes",
         "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
         "policy":{
           "type": "authorization",
           "description": "Grant Operator on Block Storage for VPC volumes",
           "control": {
               "grant": {
                 "roles": [
                   {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}]
               }},
           "subject": {
             "attributes": [
               {"key": "serviceName", "value": "is"},
               {"key": "resourceType", "value": "backup-policy"}
               ]},
           "resource": {
             "attributes": [
                {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                {"key": "volumeId", "operator": "stringExists", "value": "true"}
               ]}}
    }
    
    • Block Storage Servicio de instantáneas:
    {
         "name": "Centralized authorization for Backup service to work with Block Storage snapshots",
         "description": "Grant Editor Role for the Backup service to work with Block Storage snapshots",
         "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
         "policy": {
           "type": "authorization",
           "description": "Grant Editor on Block Storage for VPC snapshots",
           "control": {
               "grant": {
                 "roles": [
                   {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}]
               }},
           "subject": {
             "attributes": [
               {"key": "serviceName", "value": "is"},
               {"key": "resourceType", "value": "backup-policy"}
               ]},
           "resource": {
             "attributes": [
               {"key": "serviceName", "operator": "stringEquals", "value": "is"},
               {"key": "snapshotId", "operator": "stringExists", "value": "true"}
               ]}}
    }
    
    • Grupo de consistencia de instantánea:
     {
          "name": "Centralized authorization for Backup service to work with snapshot consistency groups",
          "description": "Grant Editor Role for the Backup service to work with snapshot consistency groups",
          "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
          "policy": {
            "type": "authorization",
            "description": "Grant Editor on snapshot consistency groups",
            "control": {
                "grant": {
                  "roles": [
                    {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}]
                }},
            "subject": {
              "attributes": [
                {"key": "serviceName", "value": "is"},
                {"key": "resourceType", "value": "backup-policy"}
                ]},
            "resource": {
              "attributes": [
                {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                {"key": "snapshotConsistencyGroupId", "operator": "stringExists", "value": "true"}
                ]}}
     }
    
    • Archivos compartidos:
      {
           "name": "Centralized authorization for Backup service to work with File shares",
           "description": "Grant Editor Role for the Backup service to work with File shares",
           "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
           "policy": {
             "type": "authorization",
             "description": "Grant Editor, and Share Snapshot Operator roles on File shares",
             "control": {
                 "grant": {
                   "roles": [
                     {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"},{"role_id": "crn:v1:bluemix:public:iam::::role:ShareSnapshotOperator"}]
             },
             "subject": {
               "attributes": [
                 {"key": "serviceName", "value": "is"},
                 {"key": "resourceType", "value": "backup-policy"}]
             },
             "resource": {
               "attributes": [
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "shareId", "operator": "stringExists", "value": "true"}]
             }
           }
      }
    
  1. Ejecute el comando authorization-policy-template-create con el archivo JSON como se muestra en la siguiente solicitud de ejemplo:

    ibmcloud iam authorization-policy-template-create --file /path/to/vpc-share-authorization-template.json
    
  2. Repita el proceso para todos los archivos JSON. Cuando haya terminado, las plantillas estarán listas para ser confirmadas y asignadas a cuentas secundarias.

  3. Ejecute los siguientes comandos para confirmar la versión de la plantilla y asignarla a las cuentas de destino.

    ibmcloud iam authorization-policy-template-version-commit (TEMPLATE_ID | TEMPLATE_NAME) TEMPLATE_VERSION [-q, --quiet]
    
    ibmcloud iam authorization-policy-assignment-create (TEMPLATE_ID | TEMPLATE_NAME) TEMPLATE_VERSION --target-type TYPE --target TARGET [-q, --quiet] [-o, --output FORMAT]
    

Para obtener más información sobre todos los parámetros disponibles para este comando, consulta ibmcloud iam authorization-policy-template-create.

Crear autorización para Event Notifications

Para crear una política de autorización de servicio a servicio para Event Notifications, utilice el comando ' authorization-policy-create.

ibmcloud iam authorization-policy-create is event-notification EventSourceManager --source-resource-type backup-policy --target-resource-instance $en-instance-ID

Para obtener más información sobre todos los parámetros que están disponibles para este mandato, consulte ibmcloud iam authorization-policy-create.

Creación de políticas de autorización con la API

Creación de autorizaciones para copias de seguridad por volumen a nivel de cuenta

Para utilizar Backup for VPC en tu cuenta con el fin de crear políticas y planes, así como para ejecutar tareas de copia de seguridad de volúmenes de almacenamiento en bloque, crea las siguientes autorizaciones de servicio a servicio:

  • is.backup-policy (origen) a is.instance (destino) con el rol de operador .
  • is.backup-policy (origen) a is.volume (destino) con el rol de operador .
  • is.backup-policy (origen) a is.snapshot (destino) con el rol de editor .
  • is.backup-policy (origen) a is.snapshot-consistency-group con el rol de editor

Realice la solicitud a la API de gestión de políticas de IAM, de forma parecida a los ejemplos siguientes.

Mantén los valores de los comodines ("*") en los ejemplos. Sustituir los comodines por identificadores de recursos específicos limita el alcance de la autorización y provoca errores en las copias de seguridad. Para obtener más información, consulta la sección sobre resolución de problemas relacionados con el ámbito de autorización.

curl -X POST 'https://iam.cloud.ibm.com/v1/policies'
-H 'Authorization: Bearer $TOKEN'
-H 'Content-Type: application/json'
-d '{
   "type": "access",
   "description": "Operator role for the Backup service to the Virtual Server service",
   "subjects": [
    {"attributes": [
       {"name": "serviceName", "value": "is"},
       {"name": "accountId", "value": "$ACCOUNT_ID"},
       {"name": "resourceType", "value": "backup-policy"}]
    }
   ],
  "roles":[
    {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}
   ],
   "resources":[
    {"attributes":[
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "serviceName", "operator": "stringEquals", "value": "is"},
      {"name": "instanceId", "operator": "stringEquals", "value": "*"}]
    }
  ]
}'
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' \
-d '{
   "type": "access",
   "description": "Operator role for the Backup service to the Cloud Block Storage",
   "subjects":[
    {"attributes":[
      {"name": "serviceName", "value": "is"},
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "resourceType", "value": "backup-policy"}]
    }],
   "roles":[
    {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}
    ],
   "resources":[
    {"attributes": [
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "serviceName", "operator": "stringEquals", "value": "is.volume"},
      {"name": "volumeId", "operator": "stringEquals", "value": "*"}
     ]
    }
   ]
}'
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' \
-d '{
   "type": "access",
   "description": "Editor role for the Backup service to Block Storage Snapshots",
   "subjects": [
    {"attributes": [
      {"name": "serviceName", "value": "is"},
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "resourceType", "value": "backup-policy"}]
    }
   ],
   "roles":[
    {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}
   ],
   "resources":[
    {"attributes": [
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "serviceName", "operator": "stringEquals", "value": "is"},
      {"name": "snapshotId", "operator": "stringEquals", "value": "*"}]
    }
   ]
}'
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' \
-d '{
   "type": "access",
   "description": "Editor role for the Backup service to the Snapshot consistency groups",
   "subjects": [
    {"attributes": [
       {"name": "serviceName", "value": "is"},
       {"name": "accountId", "value": "$ACCOUNT_ID"},
       {"name": "resourceType", "value": "backup-policy"}]
    }
   ],
  "roles":[
    {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}
   ],
   "resources":[
    {"attributes":[
      {"name": "accountId", "value": "$ACCOUNT_ID"},
      {"name": "serviceName", "operator": "stringEquals", "value": "is"},
      {"name": "snapshotConsistencyGroupId", "operator": "stringEquals", "value": "*"}]
    }
  ]
}'

Para obtener más información, consulte la especificación de API para IAM Policy Management.

Creación de la autorización entre cuentas para las copias de seguridad de volumen gestionadas por la empresa desde la cuenta secundaria

Para permitir que un administrador de empresa gestione las copias de seguridad de forma centralizada, las subcuentas deben proporcionar autorización para que el servicio de copia de seguridad de la cuenta de empresa interactúe con los recursos de las cuentas hijo.

  1. Realice una solicitud de API a la API de Enterprise Management para obtener el ID de cuenta de la cuenta de empresa padre.

    curl -X GET "https://enterprise.cloud.ibm.com/v1/enterprises"
    -H "Authorization: Bearer <IAM_Token>"
    -H 'Content-Type: application/json'
    
  2. A continuación, realice las solicitudes a la API de gestión de políticas de IAM para crear las autorizaciones de servicio a servicio para el is.backup-policy de la cuenta de empresa para interactuar con los servicios de is.backup, is.snapshot, is.volume, is.snapshot-consistency-group y is.instance de la cuenta hijo.

    • Autorice a is.backup-policy (origen) a interactuar con is.backup-policy (destino) con el rol de editor .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H
    'Authorization: Bearer $TOKEN' -H
    'Content-Type: application/json' -d
    '{
      "type": "access",
      "description": "Editor role for the Enterprise account's backup service to interact with this account's backup service.",
      "subjects": [
        {"attributes": [
           {"name": "serviceName", "value": "is"},
           {"name": "accountId", "value": "$ENTERPRISE_ACCOUNT_ID"},
           {"name": "resourceType", "value": "backup-policy"}]
         }
       ],
      "roles":[
        {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}
      ],
      "resources":[
        {"attributes":[
           {"name": "accountId", "value": "$SUB_ACCOUNT_ID", "operator": "stringEquals"},
           {"name": "serviceName", "operator": "stringEquals", "value": "is"},
           {"name": "backupPolicyId", "operator": "stringEquals", "value": "*"}]
        }
       ]
      }'
    
    • Autorice a is.backup-policy (origen) a interactuar con is.volume (destino) con el rol operator .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H
    'Authorization: Bearer $TOKEN' -H
    'Content-Type: application/json' -d
    '{
      "type": "access",
      "description": "Operator role for the Enterprise account's backup service to interact with this account's volume service",
      "subjects": [
        {
         "attributes": [
           {"name": "serviceName", "value": "is"},
           {"name": "accountId", "value": "$ENTERPRISE_ACCOUNT_ID"},
           {"name": "resourceType", "value": "backup-policy"}]
         }
       ],
      "roles":[
        {"role_id" "crn:v1:bluemix:public:iam::::role:Operator"}
       ],
      "resources":[
        {"attributes": [
           {"name": "accountId", "value": "$SUB_ACCOUNT_ID"},
           {"name": "serviceName", "operator": "stringEquals", "value": "is.volume"},
           {"name": "volumeId", "operator": "stringEquals", "value": "*"}]
        }
       ]
    }'
    
    • Autorice a is.backup-policy (origen) a interactuar con is.snapshot (destino) con el rol de editor .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H
    'Authorization: Bearer $TOKEN' -H
    'Content-Type: application/json' -d
     '{
       "type": "access",
       "description": "Editor role for the Enterprise account's backup service to interact with this account's snapshots",
       "subjects":[
        {
         "attributes":[
           {"name": "serviceName", "value": "is"},
           {"name": "accountId", "value": "$ENTERPRISE_ACCOUNT_ID"},
           {"name": "resourceType", "value": "backup-policy"}]
         }
        ],
       "roles":[
          {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}
        ],
       "resources":[
          {"attributes": [
           {"name": "accountId", "value": "$SUB_ACCOUNT_ID"},
           {"name": "serviceName", "operator": "stringEquals", "value": "is"},
           {"name": "snapshotId", "operator": "stringEquals", "value": "*"}]
        }
       ]
     }'
    
    • Autorice a is.backup-policy (origen) a interactuar con is.instance (destino) con el rol operator .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H
    'Authorization: Bearer $TOKEN' -H
    'Content-Type: application/json' -d
    '{
      "type": "access",
      "description": "Operator role for the Enterprise account's backup service to interact with this account's virtual server instance service",
      "subjects": [
        {"attributes": [
           {"name": "serviceName", "value": "is"},
           {"name": "accountId", "value": "$ENTERPRISE_ACCOUNT_ID"},
           {"name": "resourceType", "value": "backup-policy"}]
         }
       ],
      "roles":[
        {"role_id" "crn:v1:bluemix:public:iam::::role:Operator"}
       ],
      "resources":[
        {"attributes": [
           {"name": "accountId", "value": "$SUB_ACCOUNT_ID"},
           {"name": "serviceName", "operator": "stringEquals", "value": "is.volume"},
           {"name": "instanceId", "operator": "stringEquals", "value": "*"}]
        }
       ]
    }'
    

Para obtener más información, consulte la especificación de API para IAM Policy Management.

Creación de autorizaciones para copias de seguridad de archivos compartidos

Para utilizar Backup for VPC en tu cuenta con el fin de crear políticas y planes, así como para ejecutar tareas de copia de seguridad de recursos compartidos de archivos, realiza la siguiente solicitud para crear la autorización de servicio a servicio necesaria.

curl -X POST 'https://iam.cloud.ibm.com/v2/policies'
-H 'Authorization: Bearer $TOKEN'
-H 'Content-Type: application/json'
-d '{
     "type": "authorization",
     "description": "IAM roles for the Backup service to Cloud File Storage",
     "subject": {
        "attributes": [
            {"key": "serviceName","operator": "stringEquals","value": "is"},
            {"key": "accountId","operator": "stringEquals","value": "a1234567"},
            {"key": "resourceType","operator": "stringEquals","value": "backup-policy"}]
     },
     "control": {
        "grant": {
            "roles": [
                {"role_id":"crn:v1:bluemix:public:is::::serviceRole:ShareSnapshotOperator"},
                {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}]}
     },
     "resource": {
        "attributes": [
            {"key": "accountId","operator": "stringEquals","value": "a1234567"},
            {"key": "serviceName","operator": "stringEquals","value": "is"},
            {"key": "shareId","operator": "stringExists","value": true}]
     }
    }'

Creación de plantillas de autorización entre cuentas para las copias de seguridad gestionadas por Enterprise

Los administradores de cuentas corporativas pueden crear y asignar plantillas de políticas de autorización a las cuentas secundarias mediante programación, con el fin de gestionar las autorizaciones de forma centralizada. Para crear una plantilla de política de autorización que se utilice con las políticas de copia de seguridad en todas las cuentas secundarias de la empresa, sigue estos pasos.

  1. Realice una solicitud de API a la API de Enterprise Management para obtener el ID de cuenta de la cuenta de empresa padre.

    curl -X GET `https://enterprise.cloud.ibm.com/v1/enterprises`
    -H "Authorization: Bearer <IAM_Token>"
    -H 'Content-Type: application/json'
    
  2. A continuación, realice las solicitudes a la API de gestión de políticas de IAM para crear las autorizaciones de servicio a servicio para que is.backup-policy de la cuenta de empresa interactúe con los servicios is.backup, is.snapshot, is.volume, is.snapshot-consistency-group y is.instance de la cuenta secundaria asignada.

    • Autorice a is.backup-policy (origen) a interactuar con is.backup-policy (destino) con el rol de editor .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
       "name": "Centralized authorization for Backup service to work with Instances",
       "description": "Grant Operator Role for the Backup service to work with Instances",
       "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
       "policy":{
         "type": "authorization",
         "description": "Grant Operator on VPC Instances",
         "control":{
             "grant":{
               "roles":[
                 {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}]
               }},
         "subject":{
             "attributes":[
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "resourceType", "operator": "stringEquals", "value": "backup-policy"}
               ]},
         "resource":{
             "attributes":[
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "instanceId", "operator": "stringExists", "value": true}
               ]}}
      }
    
    • Autorice a is.backup-policy (origen) a interactuar con is.volume (destino) con el rol operator .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
           "name": "Centralized authorization for Backup service to work with Block Storage service",
           "description": "Grant Operator Role for the Backup service to work with Block Storage volumes",
           "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
           "policy":{
             "type": "authorization",
             "description": "Grant Operator on Block Storage for VPC volumes",
             "control": {
                 "grant": {
                   "roles": [
                     {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}]
                 }},
             "subject": {
               "attributes": [
                 {"key": "serviceName", "value": "is"},
                 {"key": "resourceType", "value": "backup-policy"}
                 ]},
             "resource": {
               "attributes": [
                  {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                  {"key": "volumeId", "operator": "stringExists", "value": "true"}
                 ]}}
      }'
    
    • Autorice a is.backup-policy (origen) a interactuar con is.snapshot (destino) con el rol de editor .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
           "name": "Centralized authorization for Backup service to work with Block Storage snapshots",
           "description": "Grant Editor Role for the Backup service to work with Block Storage snapshots",
           "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
           "policy": {
             "type": "authorization",
             "description": "Grant Editor on Block Storage for VPC snapshots",
             "control": {
                 "grant": {
                   "roles": [
                     {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}]
                 }},
             "subject": {
               "attributes": [
                 {"key": "serviceName", "value": "is"},
                 {"key": "resourceType", "value": "backup-policy"}
                 ]},
             "resource": {
               "attributes": [
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "snapshotId", "operator": "stringExists", "value": "true"}
                 ]}}
      }'
    
    • Autorice a is.backup-policy (origen) a interactuar con is.instance (destino) con el rol operator .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
       "name": "Centralized authorization for Backup service to work with Instances",
       "description": "Grant Operator Role for the Backup service to work with Instances",
       "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
       "policy":{
         "type": "authorization",
         "description": "Grant Operator on VPC Instances",
         "control":{
             "grant":{
               "roles":[
                 {"role_id": "crn:v1:bluemix:public:iam::::role:Operator"}]
               }},
         "subject":{
             "attributes":[
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "resourceType", "operator": "stringEquals", "value": "backup-policy"}
               ]},
         "resource":{
             "attributes":[
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "instanceId", "operator": "stringExists", "value": true}
               ]}}
      }`
    
    • Autorice a is.backup-policy (origen) a interactuar con is.snapshotConsistencyGroup (destino) con el rol de editor .
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
           "name": "Centralized authorization for Backup service to work with snapshot consistency groups",
           "description": "Grant Editor Role for the Backup service to work with snapshot consistency groups",
           "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
           "policy": {
             "type": "authorization",
             "description": "Grant Editor on snapshot consistency groups",
             "control": {
                 "grant": {
                   "roles": [
                     {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"}]
                 }},
             "subject": {
               "attributes": [
                 {"key": "serviceName", "value": "is"},
                 {"key": "resourceType", "value": "backup-policy"}
                 ]},
             "resource": {
               "attributes": [
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "snapshotConsistencyGroupId", "operator": "stringExists", "value": "true"}
                 ]}}
      }`
    
    • Autorizar is.backup-policy (fuente) para interactuar con is.share (objetivo) con el editor y compartir roles de operador de instantáneas.
    curl -X POST 'https://iam.cloud.ibm.com/v1/policy_templates'
    -H 'Authorization: Bearer $TOKEN'
    -H 'Content-Type: application/json'
    -d '{
           "name": "Centralized authorization for Backup service to work with File shares",
           "description": "Grant Editor Role for the Backup service to work with File shares",
           "account_id": "ENTERPRISE_ROOT_ACCOUNT_ID",
           "policy": {
             "type": "authorization",
             "description": "Grant Editor, and Share Snapshot Operator roles on File shares",
             "control": {
                 "grant": {
                   "roles": [
                     {"role_id": "crn:v1:bluemix:public:iam::::role:Editor"},
                     {"role_id": "crn:v1:bluemix:public:iam::::role:ShareSnapshotOperator"}]}
             },
             "subject": {
               "attributes": [
                 {"key": "serviceName", "value": "is"},
                 {"key": "resourceType", "value": "backup-policy"}]
             },
             "resource": {
               "attributes": [
                 {"key": "serviceName", "operator": "stringEquals", "value": "is"},
                 {"key": "shareId", "operator": "stringExists", "value": "true"}]
             }
           }
      }'
    
  3. Después de crear las plantillas de autorización, debe confirmarlas y asignarlas a las cuentas.

Para obtener más información, consulte la especificación de API para IAM Policy Management.

Crear autorización para Event Notifications

Para crear una política de autorización de servicio a servicio para Event Notifications, realiza una solicitud de API para conceder a is.backup-policy (origen) acceso a event-notification (destino) con el rol EventSourceManager.

curl -X POST 'https://iam.cloud.ibm.com/v2/policies' -H
'Authorization: Bearer $TOKEN' -H
'Content-Type: application/json' -d
'{
  "type": "access",
  "description": "Event Source Manager role for the backup service to interact with the Event notification service",
  "subjects": [
       {"attributes": [
          {"name": "serviceName", "value": "is"},
          {"name": "resourceType", "value": "backup-policy"}]
        }
  ],
  "roles":[
       {"role_id" "crn:v1:bluemix:public:iam::::role:EventSourceManager"}
  ],
  "resource":[
       {"attributes": [
          {"name": "serviceName", "operator": "stringEquals", "value": "event-notification"},
          {"name": "instanceId", "operator": "stringEquals", "value": "<en-instance-ID>"}]
       }
  ]
}'

Creación de políticas de autorización con Terraform

Creación de autorizaciones para copias de seguridad por volumen a nivel de cuenta

Cree una política de autorización entre servicios utilizando el argumento de recurso ibm_iam_authorization_policy en el archivo main.tf.

Mantén la relación « operator = "stringExists" » con « value = "true" » para los atributos de los recursos. El cambio a « "stringEquals" » con identificadores de recursos específicos limita el ámbito de autorización y provoca errores en las copias de seguridad. Para obtener más información, consulta la sección sobre resolución de problemas relacionados con el ámbito de autorización.

resource "ibm_iam_authorization_policy" "policy1" {
  subject_attributes {
    name  = "accountId"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  subject_attributes {
    name  = "serviceName"
    value = "is"
  }
  subject_attributes {
    name  = "resourceType"
    value = "backup-policy"
  }
  resource_attributes {
    name  = "accountId"
    operator = "stringEquals"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  resource_attributes {
    name  = "serviceName"
    operator = "stringEquals"
    value = "is"
  }
  resource_attributes {
    name  = "volumeId"
    operator = "stringExists"
    value = "true"
  }
  roles   = ["Operator"]
}
resource "ibm_iam_authorization_policy" "policy2" {
  subject_attributes {
    name  = "accountId"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  subject_attributes {
    name  = "serviceName"
    value = "is"
  }
  subject_attributes {
    name  = "resourceType"
    value = "backup-policy"
  }
  resource_attributes {
    name  = "accountId"
    operator = "stringEquals"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  resource_attributes {
    name  = "serviceName"
    operator = "stringEquals"
    value = "is"
  }
  resource_attributes {
    name  = "snapshotId"
    operator = "stringExists"
    value = "true"
  }
  roles   = ["Editor"]
}
resource "ibm_iam_authorization_policy" "policy3" {
  subject_attributes {
    name  = "accountId"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  subject_attributes {
    name  = "serviceName"
    value = "is"
  }
  subject_attributes {
    name  = "resourceType"
    value = "backup-policy"
  }
  resource_attributes {
    name  = "accountId"
    operator = "stringEquals"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  resource_attributes {
    name  = "serviceName"
    operator = "stringEquals"
    value = "is"
  }
  resource_attributes {
    name  = "snapshotConsistencyGroupId"
    operator = "stringExists"
    value = "true"
  }
  roles   = ["Editor"]
}
resource "ibm_iam_authorization_policy" "policy4" {
  subject_attributes {
    name  = "accountId"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  subject_attributes {
    name  = "serviceName"
    value = "is"
  }
  subject_attributes {
    name  = "resourceType"
    value = "backup-policy"
  }
  resource_attributes {
    name  = "accountId"
    operator = "stringEquals"
    value = data.ibm_iam_account_settings.iam.account_id
  }
  resource_attributes {
    name  = "serviceName"
    operator = "stringEquals"
    value = "is"
  }
  resource_attributes {
    name  = "instanceId"
    operator = "stringExists"
    value = "true"
  }
  roles   = ["Operator"]
}

Para obtener más información sobre los argumentos y atributos, consulte la documentación de Terraform para recursos de autorización.

Creación de autorizaciones para copias de seguridad de archivos compartidos

Cree una política de autorización entre servicios utilizando el argumento de recurso ibm_iam_authorization_policy en el archivo main.tf.

resource "ibm_iam_authorization_policy" "policy1" {
   source_service_name  = "is"
   source_resource_type = "backup-policy"
   target_service_name  = "is"
   target_resource_type = "share"
   roles                = ["ShareSnapshotOperator,Editor"]
}

Para obtener más información sobre los argumentos y atributos, consulte la documentación de Terraform para recursos de autorización.

Crear autorización para Event Notifications

Para crear una política de autorización de servicio a servicio para Event Notifications, utilice el argumento de recurso ' ibm_iam_authorization_policy en su archivo ' main.tf.

resource "ibm_iam_authorization_policy" "en-policy" {
   source_service_name         = "is"
   source_resource_type        = "backup-policy"
   source_resource_instance_id = ibm_backup-policy_instance.instance.guid
   target_service_name         = "event-notification"
   target_resource_instance_id = ibm_event-notification_instance.instance.guid
   roles                       = ["EventSourceManager"]
}

Para obtener más información sobre los argumentos y atributos, consulte la documentación de Terraform para recursos de autorización.

Próximos pasos