Eventos de seguimiento de la actividad para App ID

IBM Cloud como App ID, generan eventos de seguimiento de la actividad de su cuenta.

Los eventos de seguimiento de actividades informan sobre las actividades que cambian el estado de un servicio en IBM Cloud. Puede utilizar los eventos para investigar actividades anómalas y acciones críticas, así como para cumplir los requisitos normativos de auditoría.

Puede utilizar IBM Cloud Activity Tracker Event Routing, un servicio de la plataforma, para enrutar los eventos de auditoría de su cuenta a los destinos de su elección mediante la configuración de objetivos y rutas que definen dónde se envían los eventos de seguimiento de actividad. Para obtener más información, consulte Acerca de IBM Cloud Activity Tracker Event Routing.

Puede utilizar IBM Cloud Logs para visualizar y alertar sobre eventos generados en su cuenta y enrutados por IBM Cloud Activity Tracker Event Routing a una instancia de IBM Cloud Logs.

Ubicaciones donde se generan los eventos de seguimiento de actividad

App ID envía eventos de seguimiento de la actividad por IBM Cloud Activity Tracker Event Routing en las regiones que se indican en la tabla siguiente.

Regiones a las que se envían los eventos de seguimiento de la actividad en las ubicaciones de América
Dallas (us-south) Washington (us-east) Toronto (ca-tor) Sao Paulo (br-sao)
Sí Sí Sí Sí
Regiones a las que se envían los eventos de seguimiento de actividad en ubicaciones de Asia-Pacífico
Tokio (jp-tok) Sídney (au-syd) Osaka (jp-osa) in-che
Sí Sí Sí No
Regiones a las que se envían los eventos de seguimiento de la actividad en ubicaciones europeas
Frankfurt (eu-de) Londres (eu-gb) Madrid (eu-es)
Sí Sí No

Visualización de eventos de seguimiento de actividad para App ID

Puede utilizar IBM Cloud Logs para visualizar y alertar sobre eventos generados en su cuenta y enrutados por IBM Cloud Activity Tracker Event Routing a una instancia de IBM Cloud Logs.

Lanzamiento de IBM Cloud Logs desde la página de Observabilidad

Para más información sobre el inicio de la interfaz de usuario de IBM Cloud Logs, consulte Inicio de la consola en la documentación de IBM Cloud Logs.

Lista de sucesos de gestión

La siguiente tabla contiene información sobre las acciones que un usuario puede realizar a través de la GUI de servicio.

Acciones que generan eventos de gestión
Acción Descripción Acción de la GUI
appid.recent-activity.read Ver actividad reciente. Se puede encontrar en el recuadro Registro de actividad en el separador Visión general.
appid.idp-config.read Ver la configuración del proveedor de identidad. Se puede encontrar en el separador Gestionar autenticación > Proveedores de identidad.
appid.idp-config.update Actualizar la configuración del proveedor de identidad. Se puede actualizar en el separador Gestionar autenticación > Proveedores de identidad.
appid.tokens-config.read Ver la configuración de caducidad de la señal. Se puede encontrar en el separador Gestionar autenticación > Valores de autenticación.
appid.tokens-config.update Actualizar la configuración de caducidad de la señal. Se puede encontrar en el separador Gestionar autenticación > Valores de autenticación.
appid.redirect-uris.read Ver la configuración actual de URI de redirección. Se puede encontrar en el separador Gestionar autenticación > Valores de autenticación.
appid.redirect-uris.update Actualice la configuración del URI de redirección. Se puede actualizar en el separador Gestionar autenticación > Proveedores de identidad.
appid.is-profiles-active.read Ver la configuración de almacenamiento del perfil de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.is-profiles-active.update Actualizar la configuración de almacenamiento del perfil de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.users.read Buscar perfiles de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.users.create Crear un perfil de usuario prerregistrado. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.users.get Exportar perfiles de usuario. Debe realizarse a través de la API.
appid.refresh-token.revoke Revoque todas las señales de renovación que se emiten para el usuario. Debe realizarse a través de la API.
appid.users.import Importar perfiles de usuario. Debe realizarse a través de la API.
appid.user-profile.read Ver un perfil de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.user-profile.update Actualizar un perfil de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.user-profile.bulkdelete Suprimir una lista de perfiles de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.user-roles.read Ver los roles de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.user-roles.update Actualizar los roles de usuario. Se puede encontrar en el separador Perfiles y roles > Perfiles de usuario.
appid.roles.read Ver la lista de roles. Se puede encontrar en el separador **Perfiles y roles > Roles **.
appid.roles.create Crear un rol. Se puede encontrar en el separador **Perfiles y roles > Roles **.
appid.role.read Ver el rol. Se puede encontrar en el separador **Perfiles y roles > Roles **.
appid.role.update Actualizar el rol. Se puede encontrar en el separador **Perfiles y roles > Roles **.
appid.applications.read Ver la lista de aplicaciones. Se puede encontrar en el separador Aplicaciones.
appid.applications.create Crear una aplicación. Se puede encontrar en el separador Aplicaciones.
appid.application.read Ver la aplicación. Se puede encontrar en el separador Aplicaciones.
appid.application.update Actualizar la aplicación. Se puede encontrar en el separador Aplicaciones.
appid.application-scopes.read Ver los ámbitos de aplicación. Se puede encontrar en el separador Aplicaciones.
appid.application-scopes.update Actualizar los ámbitos de aplicación. Se puede encontrar en el separador Aplicaciones.
appid.theme-text.read Ver los textos del tema del widget de inicio de sesión. Se puede encontrar en el separador Personalización de inicio de sesión.
appid.theme-text.update Actualizar los textos del tema de la nota a pie de página del widget de inicio de sesión. Se puede actualizar en el separador Personalización de inicio de sesión.
appid.theme-color.read Ver el color del tema de la cabecera del widget de inicio de sesión. Se puede encontrar en el separador Personalización de inicio de sesión.
appid.theme-color.update Actualizar el color del tema de la cabecera del widget de inicio de sesión. Se puede actualizar en el separador Personalización de inicio de sesión.
appid.media.read Ver la imagen que se muestra en el widget de inicio de sesión. Se puede encontrar en el separador Personalización de inicio de sesión.
appid.media.update Actualizar la imagen que se muestra en el widget de inicio de sesión. Se puede actualizar en el separador Personalización de inicio de sesión.
appid.ui-configuration.read Ver la configuración de IU del widget de inicio de sesión, que incluye color e imagen de cabecera. Se puede encontrar en el separador Personalización de inicio de sesión.
appid.ui-languages.read Ver una lista de idiomas soportados. Se debe ver desde la API.
appid.ui-languages.update Actualizar los idiomas soportados. Se debe actualizar a través de la API.
appid.saml-metadata.read Ver los metadatos SAML de App ID. Se puede encontrar en el separador Proveedores de identidad > Federación de SAML 2.0.
ppid.cloud-directory-user.read Ver un usuario del Directorio en la nube. Se puede encontrar en el separador Directorio en la nube > Usuarios > Ver detalles de usuario.
appid.cloud-directory-user.update Actualizar un usuario del Directorio en la nube. Se puede actualizar en el separador Usuarios.
appid.cloud-directory-user.delete Suprimir un usuario del Directorio en la nube. Se debe suprimir a través de la API.
appid.user.delete Suprimir un usuario y perfil del Directorio en la nube. Se debe suprimir a través de la API.
appid.cloud-directory-users.read Ver una lista de los usuarios del Directorio en la nube. Se puede encontrar en el separador Directorio en la nube > Usuarios.
appid.cloud-directory-user.update Actualizar la lista de usuarios del Directorio en la nube. Se puede actualizar en el separador Directorio en la nube > Usuarios.
appid.cloud-directory-user.delete Suprimir una lista de usuarios del Directorio en la nube. Se debe suprimir a través de la API.
appid.users.bulkdelete Suprimir una lista de usuarios y perfiles del Directorio en la nube. Se debe suprimir a través de la API.
appid.cloud-directory-users.get Exportar usuarios del directorio en la nube. Debe realizarse a través de la API.
appid.cloud-directory-users.import Importar usuarios del directorio en la nube. Debe realizarse a través de la API.
appid.cloud-directory-user-sso.set-off Invalidar todas las sesiones de SSO del usuario. Debe realizarse a través de la API.
appid.email-dispatcher.read Ver las configuraciones del distribuidor de correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-dispatcher.update Actualizar las configuraciones del distribuidor de correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-dispatcher-test.send Probar el distribuidor de correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-settings-test.send Probar las configuraciones de valores del correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-template.read Ver una plantilla de correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-template.update Actualizar una plantilla de correo electrónico. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.email-template.delete Suprimir una plantilla de correo electrónico para restablecer el valor predeterminado. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.sender-details.read Ver los detalles del remitente. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.sender-details.update Actualizar los detalles del remitente. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.resend-notification.send Reenviar notificaciones de usuario. Debe realizarse a través de la API.
appid.self-forgot-password.start Inicia el proceso de contraseña olvidada. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.forgot-password-result.read Ver el resultado de la confirmación de contraseña olvidada. Debe realizarse a través de la API.
appid.self-sign-up.start Inicia el proceso de registro. Se puede encontrar en el separador Directorio en la nube > Valores.
appid.sign-up-result.read Ver la confirmación del resultado del registro. Debe realizarse a través de la API.
appid.action_url.read Ver el URL personalizado al que se llama cuando se realiza una acción. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.action-url.update Actualizar el URL personalizado al que se llama cuando se realiza una acción. Se puede encontrar en el separador Directorio en la nube > Plantillas de correo electrónico.
appid.password-regex.read Ver la regex de contraseña. Se puede encontrar en el separador Directorio en la nube > Políticas de contraseña.
appid.password-regex.update Actualizar la regex de contraseña. Se puede encontrar en el separador Directorio en la nube > Políticas de contraseña.
appid.advanced-password-management.read Ver las configuraciones de políticas de contraseñas avanzadas. Se puede encontrar en el separador Directorio en la nube > Políticas de contraseña.
appid.advanced-password-management.update Actualizar las configuraciones de políticas de contraseñas avanzadas. Se puede encontrar en el separador Directorio en la nube > Políticas de contraseña.
appid.user-password.update Establecer una nueva contraseña para el usuario del Directorio en la nube. Debe realizarse a través de la API.
appid.capture-runtime-activity.read Conmutador para Ver actividad el tiempo de ejecución. Se puede ver en el separador Gestionar autenticación > Valores de autenticación.
appid.capture-runtime-activity.update Conmutar la supervisión de la actividad en tiempo de ejecución. Se puede actualizar en el separador Gestionar autenticación > Valores de autenticación.
appid.mfa.read Ver las configuraciones de MFA. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores.
appid.mfa.update Actualizar las configuraciones de MFA. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores.
appid.mfa-channels.read Ver los canales de MFA. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores.
appid.mfa-channel.read Ver las configuraciones de los canales de MFA. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores.
appid.mfa-channel.update Actualizar los canales. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores.
appid.sms-dispatcher-test.send Probar las configuraciones del distribuidor de SMS. Se puede encontrar en el separador Directorio en la nube > Autenticación de multifactores > Proveedor de SMS.
appid.mfa-extension-premfa.read Ver la configuración de extensión de pre-MFA. Debe realizarse a través de la API.
appid.mfa-extension-premfa.update Actualizar la configuración de extensión de pre-MFA. Debe realizarse a través de la API.
appid.mfa-extension-postmfa.read Ver la configuración de extensión de post MFA. Debe realizarse a través de la API.
appid.mfa-extension-postmfa.update Actualizar la configuración de extensión de post MFA. Debe realizarse a través de la API.
appid.is-mfa-extension-active.update Actualizar el estado de la extensión registrada. Debe realizarse a través de la API.
appid.mfa-extension-test.send Pruebe la configuración de extensión registrada. Debe realizarse a través de la API.
ppid.sso.read Ver la configuración de SSO. Se puede encontrar en el separador Proveedores de identidad > Directorio en la nube > Inicio de sesión único.
appid.sso.update Actualizar la configuración de SSO. Se puede encontrar en el separador Proveedores de identidad > Directorio en la nube > Inicio de sesión único.
appid.rate-limit.read Ver las configuraciones del límite de velocidad. Debe realizarse a través de la API.
appid.rate-limit.update Actualizar las configuraciones del límite de velocidad. Debe realizarse a través de la API.

Visualización de sucesos en tiempo de ejecución

Los eventos en tiempo de ejecución le permiten realizar un seguimiento de la actividad realizada por los usuarios en su aplicación, como inicios de sesión, restablecimiento de contraseñas y solicitudes de autenticación.

Acciones que pueden rastrearse como eventos de autenticación en tiempo de ejecución
Descripción Acción Resultado reason. reasonCode target.id target.name target.typeURI
Autenticación satisfactoria en el Directorio en la nube appid.user.authenticate success 200 [appid user CRN] cloud_directory:[GUID] appid/user
Error de autenticación en el Directorio en la nube appid.user.authenticate failure 401 [appid user CRN] cloud_directory:[GUID] appid/user
Autenticación satisfactoria en Facebook appid.user.authenticate success 200 [appid user CRN] facebook:[GUID] appid/user
Error de autenticación en Facebook appid.user.authenticate failure 401 crn:unknown facebook:unknown appid/user
Autenticación satisfactoria en Google appid.user.authenticate success 200 [appid user CRN] google:[GUID] appid/user
Error de autenticación en Google appid.user.authenticate failure 401 crn:unknown google:unknown appid/user
Autenticación satisfactoria en SAML appid.user.authenticate success 200 [appid user CRN] SAML:[GUID] appid/user
Error de autenticación en SAML appid.user.authenticate failure 401 crn:unknown SAML:unknown appid/user
Autenticación satisfactoria de credenciales de cliente appid.application.authenticate success 200 [appid application CRN] client_credentials:client_id appid/application
Error en la autenticación de credenciales de cliente appid.application.authenticate failure 401 crn:undefined client_credentials:undefined appid/application
Registro en el Directorio en la nube appid.cloud-dir-user.create success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Error de registro en el Directorio en la nube appid.cloud-dir-user.create failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Confirmación de registro en el Directorio en la nube appid.cloud-dir-user.allow success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Error de confirmación de registro en el Directorio en la nube appid.cloud-dir-user.allow failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Restablecimiento o renovación de contraseña en el Directorio en la nube appid.cloud-dir-user-credentials.renew success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Error de restablecimiento o renovación de contraseña en el Directorio en la nube appid.cloud-dir-user-credentials.renew failure 400 crn:unknown cloud_directory:unknown appid/cloud_dir/user
Cambio de contraseña en el Directorio en la nube appid.cloud-dir-user-credentials.update success 200 [appid user CRN] cloud_directory:[GUID] appid/cloud_dir/user
Error de cambio de contraseña en el Directorio en la nube appid.cloud-dir-user-credentials.update failure 400 crn:unknown cloud_directory:unknown
Revocar señales de usuario appid.user-tokens.revoke success 200 appid user CRN idp:[GUID] appid/user
Error al revocar señales de usuario appid.user-tokens.revoke failure 400 appid user CRN idp:[GUID] appid/user
Cierre de sesión de SSO de usuario del Directorio en la nube appid.cloud-dir-user.set-off success 200 appid user CRN idp:[GUID] appid/user
Ver atributos de perfil de usuario appid.user-profile-attributes.read success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attributes
Actualizar atributo de perfil de usuario appid.user-profile-attributes.update success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attribute/[Attribute-name]
Suprimir atributo del perfil de usuario appid.user-profile-attributes.delete success 200 crn:profiles:[User-ID] profiles:[User-ID] appid-user-profiles/attribute/[Attribute-name]

Análisis de los eventos de seguimiento de la actividad de App ID

Un usuario que genera un suceso de tiempo de ejecución se identifica como un GUID en lugar de por nombre o correo electrónico. Como propietario de la cuenta, puede utilizar el GUID para identificar un usuario específico y, a continuación, puede buscar para ver todos los sucesos que ha desencadenado el usuario.

El caso de ejemplo siguiente sólo funciona para los usuarios de Directorio en la nube. Si el usuario está definido por un IdP externo, como Google o Facebook, sólo ese proveedor de identidad puede interpretar el GUID.

Extraer información de usuario a partir del GUID

Un suceso en la consola de IBM Cloud Activity Tracker Event Routing contiene los campos siguientes.

Ejemplos de campos que pueden encontrarse en un evento
Campo Valor Descripción
initiator.id cb967e0d-43c1-454a-968d-0efa24766846 El ID de arrendatario.
target.name cloud_directory:34e1ea6d-cc02-4941-9462-7e9c5a40b360 El ID de usuario.

Para encontrar la información de usuario correspondiente al GUID de suceso, utilice los pasos siguientes.

  1. En la pestaña Credenciales del panel de control App ID, copie y guarde la información en los campos apiKey y tenantID. El ID de arrendatario debe coincidir con el ID del suceso. Si no existen credenciales, cree un conjunto de credenciales.

  2. Obtenga una señal IAM para la apiKey insertando la clave en el mandato siguiente:

    curl -k -X POST \
       --header "Content-Type: application/x-www-form-urlencoded" \
       --header "Accept: application/json" \
       --data-urlencode "grant_type=urn:ibm:params:oauth:grant-type:apikey" \
       --data-urlencode "apikey=<apiKey>" \
       "https://iam.cloud.ibm.com/identity/token"
    
  3. Copie la señal IAM del campo access_token en la respuesta.

  4. Seleccione una región. Obtenga más información sobre las regiones disponibles.

  5. Inserte la señal IAM, el ID de arrendatario y el ID de usuario, en el mandato siguiente para obtener la información de usuario.

    curl -X GET
    --header 'Accept: application/json'
    --header 'Authorization: Bearer <IAMToken>' \
    'https://<region>.appid.cloud.ibm.com/<tenantID>/cloud_directory/Users/<userID>'
    

    También puede ejecutar este comando utilizando las API de gestión. La salida sería similar al objeto JSON siguiente:

       {
       "displayName": "test test",
       "active": true,
       "userName": "test0001",
       "mfaContext": {},
       "emails": [
       {
          "value": "mytest@yahoo.com",
          "primary": true
       }
       ],
       "meta": {
       "lastLogin": "2018-12-10T16:05:36.665Z",
       "created": "2018-08-21T08:55:50.643Z",
       "location": "/v1/cb967e0d-43c1-454a-968d-0efa24766846/Users/34e1ea6d-cc02-4941-9462-7e9c5a40b360",
       "lastModified": "2018-12-10T16:05:36.675Z",
       "resourceType": "User"
       },
       "schemas": [
       "urn:ietf:params:scim:schemas:core:2.0:User"
       ],
       "name": {
       "givenName": "test",
       "familyName": "test",
       "formatted": "test test"
       },
       "id": "34e1ea6d-cc02-4941-9462-7e9c5a40b360"
    }
    

Búsqueda de sucesos relacionados con el usuario

Puede realizar un seguimiento de los sucesos de usuarios específicos del Directorio en la nube en IBM Cloud Activity Tracker Event Routing utilizando el correo electrónico de estos usuarios. Para poder empezar el seguimiento, el correo electrónico estar correlacionado con un GUID del Directorio en la nube.

  1. Obtenga una señal IAM, un ID de arrendatario y una región tal como se describe en la sección anterior.

  2. Inserte la señal IAM, el ID de arrendatario y el correo electrónico, en el mandato siguiente para obtener la información de usuario.

    curl -X GET
    --header 'Accept: application/json'
    --header 'Authorization: Bearer <IAMToken>'
    'https://<region>.appid.cloud.ibm.com/<tenantID>/users?email=<emailAddress>'
    

    La dirección de correo electrónico se debe escapar. Por ejemplo, myTest%40yahoo.com en lugar de myTest@yahoo.com.

    También puede utilizar las API de gestión. La salida sería similar al objeto JSON siguiente:

    {
       "users": [
       {
          "idp": "cloud_directory",
          "id": "1e123399-3499-4a5c-b5a9-93843a91dc80"
       },
       {
          "idp": "cloud_directory",
          "id": "2a7abbe5-0fce-402e-9ddf-265246b415c8"
       }
       ]
    }
    
  3. Busque el valor cloud_directory:id en el campo target.name_str, en la consola de IBM Cloud Activity Tracker Event Routing.