Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Registro AWS CodeCommit Llamadas a la API con AWS CloudTrail
CodeCommit está integrado con AWS CloudTrail un servicio que proporciona un registro de las acciones realizadas por un usuario, un rol o un AWS servicio en CodeCommit. CloudTrail captura todas las llamadas a la API CodeCommit como eventos, incluidas las llamadas desde la CodeCommit consola, tu cliente de Git y las llamadas de código a las CodeCommit API. Si crea un registro, puede habilitar la entrega continua de CloudTrail eventos a un bucket de Amazon S3, incluidos los eventos para CodeCommit. Si no configuras un registro, puedes seguir viendo los eventos más recientes en la CloudTrail consola, en el Historial de eventos. Con la información recopilada por CloudTrail, puedes determinar la solicitud a la que se hizo CodeCommit, la dirección IP desde la que se hizo la solicitud, quién la hizo, cuándo se hizo y otros detalles.
Para obtener más información CloudTrail, consulta la Guía AWS CloudTrail del usuario.
CodeCommit información en CloudTrail
CloudTrail está activado en su cuenta de Amazon Web Services al crear la cuenta. Cuando se produce una actividad CodeCommit, esa actividad se registra en un CloudTrail evento junto con otros eventos de AWS servicio en el historial de eventos. Puede ver, buscar y descargar los últimos eventos de la cuenta de Amazon Web Services. Para obtener más información, consulte Visualización de eventos con el historial de CloudTrail eventos.
Para obtener un registro continuo de los eventos de su cuenta de Amazon Web Services, incluidos los eventos de CodeCommit, cree un registro. Un registro permite CloudTrail enviar archivos de registro a un bucket de Amazon S3. De manera predeterminada, cuando se crea un registro de seguimiento en la consola, el registro de seguimiento se aplica a todas las regiones de . El registro registra los eventos de todas las regiones de la AWS partición y envía los archivos de registro al bucket de Amazon S3 que usted especifique. Además, puede configurar otros AWS servicios para analizar más a fondo los datos de eventos recopilados en los CloudTrail registros y actuar en función de ellos. Para obtener más información, consulte lo siguiente:
Cuando el CloudTrail registro está activado en su cuenta de Amazon Web Services, las llamadas a la API realizadas a CodeCommit las acciones se registran en los archivos de CloudTrail registro, donde se escriben junto con otros registros de AWS servicio. CloudTrail determina cuándo crear y escribir en un archivo nuevo en función del período de tiempo y el tamaño del archivo.
Todas CodeCommit las acciones se registran CloudTrail, incluidas algunas (por ejemploGetObjectIdentifier) que no están documentadas actualmente en la referencia de la AWS CodeCommit API, sino que se hace referencia a ellas como permisos de acceso y se documentan enCodeCommit referencia de permisos. Por ejemplo, las llamadas a las acciones ListRepositories (en AWS CLI,aws codecommit
list-repositories), CreateRepository (aws
codecommit create-repository) y PutRepositoryTriggers (aws codecommit put-repository-triggers) generan entradas en los archivos de CloudTrail registro, así como las llamadas del cliente de Git a GitPull yGitPush. Además, si tienes un CodeCommit repositorio configurado como fuente para una canalización CodePipeline, verás llamadas para CodeCommit acceder a las acciones de permiso, como UploadArchive desde CodePipeline. Como se CodeCommit usa AWS Key Management Service para cifrar y descifrar repositorios, también verás en los registros las llamadas de destino Encrypt y CodeCommit las Decrypt acciones de AWS KMS origen. CloudTrail
Cada entrada de registro contiene información sobre quién generó la solicitud. La información de identidad del usuario en la entrada de registro le ayuda a determinar lo siguiente:
-
Si la solicitud se realizó con las credenciales raíz o del usuario de IAM.
-
Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado o bien un usuario de rol asumido.
-
Si la solicitud fue realizada por otro servicio AWS
Para obtener más información, consulte el Elemento userIdentity de CloudTrail .
Puede almacenar sus archivos de registro en su bucket de Amazon S3 durante todo el tiempo que desee, pero también puede definir reglas de ciclo de vida de Amazon S3 para archivar o eliminar archivos de registro automáticamente. De forma predeterminada, los archivos de registro se cifran con el cifrado del servidor (SSE) de Amazon S3.
Descripción de las entradas del archivo de CodeCommit registro
CloudTrail los archivos de registro pueden contener una o más entradas de registro. En cada entrada se enumeran varios JSON-formatted eventos. Un evento de registro representa una única solicitud de cualquier origen e incluye información sobre la acción solicitada, la fecha y la hora de la acción, los parámetros de la solicitud, etcétera. Las entradas de registro no son un rastro de la pila ordenada de las llamadas API públicas, por lo que no aparecen en ningún orden específico.
nota
Este ejemplo se ha manipulado para mejorar la legibilidad. En un archivo de CloudTrail registro, todas las entradas y eventos se concatenan en una sola línea. Este ejemplo también se ha limitado a una sola entrada. CodeCommit En un archivo de CloudTrail registro real, puede ver las entradas y los eventos de varios AWS servicios.
Contenido
Ejemplo: una entrada de registro para enumerar los CodeCommit repositorios
Ejemplo: una entrada de registro para crear un repositorio CodeCommit
Ejemplos: Registra las entradas de las llamadas de Git pull a un CodeCommit repositorio
Ejemplo: una entrada de registro para una inserción correcta de datos en un repositorio CodeCommit
Ejemplo: una entrada de registro para enumerar los CodeCommit repositorios
El siguiente ejemplo muestra una entrada de CloudTrail registro que demuestra la ListRepositories acción.
nota
Aunque ListRepositories devuelve una lista de repositorios, las respuestas no mutables no se registran en los CloudTrail registros, por lo que responseElements se muestran como null en el archivo de registro.
{ "eventVersion":"1.05", "userIdentity": { "type":"IAMUser", "principalId":"AIDACKCEVSQ6C2EXAMPLE", "arn":"arn:aws:iam::444455556666:user/Mary_Major", "accountId":"444455556666", "accessKeyId":"AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime":"2016-12-14T17:57:36Z", "eventSource":"codecommit.amazonaws.com", "eventName":"ListRepositories", "awsRegion":"us-east-1", "sourceIPAddress":"203.0.113.12", "userAgent":"aws-cli/1.10.53 Python/2.7.9 Windows/8 botocore/1.4.43", "requestParameters":null, "responseElements":null, "requestID":"cb8c167e-EXAMPLE", "eventID":"e3c6f4ce-EXAMPLE", "readOnly":true, "eventType":"AwsApiCall", "apiVersion":"2015-04-13", "recipientAccountId":"444455556666" }
Ejemplo: una entrada de registro para crear un repositorio CodeCommit
El siguiente ejemplo muestra una entrada de CloudTrail registro que muestra la CreateRepository acción en la región Este de EE. UU. (Ohio).
{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime": "2016-12-14T18:19:15Z", "eventSource": "codecommit.amazonaws.com", "eventName": "CreateRepository", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.12", "userAgent": "aws-cli/1.10.53 Python/2.7.9 Windows/8 botocore/1.4.43", "requestParameters": { "repositoryDescription": "Creating a demonstration repository.", "repositoryName": "MyDemoRepo" }, "responseElements": { "repositoryMetadata": { "arn": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "creationDate": "Dec 14, 2016 6:19:14 PM", "repositoryId": "8afe792d-EXAMPLE", "cloneUrlSsh": "ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo", "repositoryName": "MyDemoRepo", "accountId": "111122223333", "cloneUrlHttp": "https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo", "repositoryDescription": "Creating a demonstration repository.", "lastModifiedDate": "Dec 14, 2016 6:19:14 PM" } }, "requestID": "d148de46-EXAMPLE", "eventID": "740f179d-EXAMPLE", "readOnly": false, "resources": [ { "ARN": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "accountId": "111122223333", "type": "AWS::CodeCommit::Repository" } ], "eventType": "AwsApiCall", "apiVersion": "2015-04-13", "recipientAccountId": "111122223333" }
Ejemplos: Registra las entradas de las llamadas de Git pull a un CodeCommit repositorio
El siguiente ejemplo muestra una entrada de CloudTrail registro que muestra la GitPull acción en la que el repositorio local ya está actualizado.
{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime": "2016-12-14T18:19:15Z", "eventSource": "codecommit.amazonaws.com", "eventName": "GitPull", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.12", "userAgent": "git/2.11.0.windows.1", "requestParameters": null, "responseElements": null, "additionalEventData": { "protocol": "HTTP", "dataTransferred": false, "repositoryName": "MyDemoRepo", "repositoryId": "8afe792d-EXAMPLE", }, "requestID": "d148de46-EXAMPLE", "eventID": "740f179d-EXAMPLE", "readOnly": true, "resources": [ { "ARN": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "accountId": "111122223333", "type": "AWS::CodeCommit::Repository" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
El siguiente ejemplo muestra una entrada de CloudTrail registro que demuestra la GitPull acción en la que el repositorio local no está actualizado y, por lo tanto, los datos se transfieren del CodeCommit repositorio al repositorio local.
{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime": "2016-12-14T18:19:15Z", "eventSource": "codecommit.amazonaws.com", "eventName": "GitPull", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.12", "userAgent": "git/2.10.1", "requestParameters": null, "responseElements": null, "additionalEventData": { "protocol": "HTTP", "capabilities": [ "multi_ack_detailed", "side-band-64k", "thin-pack" ], "dataTransferred": true, "repositoryName": "MyDemoRepo", "repositoryId": "8afe792d-EXAMPLE", "shallow": false }, "requestID": "d148de46-EXAMPLE", "eventID": "740f179d-EXAMPLE", "readOnly": true, "resources": [ { "ARN": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "accountId": "111122223333", "type": "AWS::CodeCommit::Repository" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Ejemplo: una entrada de registro para una inserción correcta de datos en un repositorio CodeCommit
El siguiente ejemplo muestra una entrada de CloudTrail registro que demuestra que la GitPush acción se ha realizado correctamente. La acción GitPush aparece dos veces en una entrada de registro de un envío correcto.
{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime": "2016-12-14T18:19:15Z", "eventSource": "codecommit.amazonaws.com", "eventName": "GitPush", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.12", "userAgent": "git/2.10.1", "requestParameters": null, "responseElements": null, "additionalEventData": { "protocol": "HTTP", "dataTransferred": false, "repositoryName": "MyDemoRepo", "repositoryId": "8afe792d-EXAMPLE", }, "requestID": "d148de46-EXAMPLE", "eventID": "740f179d-EXAMPLE", "readOnly": false, "resources": [ { "ARN": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "accountId": "111122223333", "type": "AWS::CodeCommit::Repository" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }, { "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::444455556666:user/Mary_Major", "accountId": "444455556666", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName":"Mary_Major" }, "eventTime": "2016-12-14T18:19:15Z", "eventSource": "codecommit.amazonaws.com", "eventName": "GitPush", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.12", "userAgent": "git/2.10.1", "requestParameters": { "references": [ { "commit": "100644EXAMPLE", "ref": "refs/heads/main" } ] }, "responseElements": null, "additionalEventData": { "protocol": "HTTP", "capabilities": [ "report-status", "side-band-64k" ], "dataTransferred": true, "repositoryName": "MyDemoRepo", "repositoryId": "8afe792d-EXAMPLE", }, "requestID": "d148de46-EXAMPLE", "eventID": "740f179d-EXAMPLE", "readOnly": false, "resources": [ { "ARN": "arn:aws:codecommit:us-east-2:111122223333:MyDemoRepo", "accountId": "111122223333", "type": "AWS::CodeCommit::Repository" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }