Acessar o log de auditoria
Note
Webhooks podem ser uma boa alternativa ao log de auditoria ou à pesquisa de API para determinados casos de uso. Os webhooks são uma maneira de o GitHub notificar seu servidor quando houver eventos específicos para um repositório, organização ou empresa. Em comparação com a API ou com a pesquisa de log de auditoria, os webhooks podem ser mais eficientes se você quiser apenas conhecer e, possivelmente, registrar quando determinados eventos ocorrerem em sua empresa, organização ou repositório. Confira "Documentação de webhooks".
O registro de auditoria lista os eventos desencadeados por atividades que afetam a sua organização nos últimos seis meses. Somente proprietários conseguem acessar o log de auditoria da organização.
Por padrão, são exibidos apenas os eventos dos últimos três meses. Para ver eventos mais antigos, você deve especificar um intervalo de datas com o parâmetro created
. Confira "Noções básicas de sintaxe de pesquisa".
- No canto superior direito de GitHub, selecione sua foto de perfil e selecione Suas organizações.
- Ao lado da organização, clique em Configurações.
- Na seção "Arquivos" da barra lateral, clique em Logs e depois em Log de auditoria.
Pesquisar no log de auditoria
O nome de cada entrada do log de auditoria é composto por uma categoria de eventos, seguida de um tipo de operação. Por exemplo, a entrada repo.create
refere-se à operação create
na categoria repo
.
Cada entrada do log de auditoria mostra informações aplicáveis sobre um evento, como:
- A empresa ou organização em que uma ação foi executada em
- O usuário (ator) que executou a ação
- O usuário afetado pela ação
- Em qual repositório uma ação foi executada
- A ação que foi executada
- Em que país a ação foi executada
- A data e a hora em que a ação ocorreu
- Para ações fora da UI da Web, como o usuário (ator) se autenticou
Observe que não é possível pesquisar as entradas usando texto. No entanto, é possível criar consultas de pesquisa usando diversos filtros. Muitos operadores usados na consultar do log, como -
, >
ou <
, correspondem ao mesmo formato que a pesquisa no GitHub Enterprise Server. Para obter mais informações, confira "Sobre a pesquisa no GitHub".
Pesquisar com base em operação
Use o qualificador operation
para limitar as ações a tipos específicos de operações. Por exemplo:
operation:access
localiza todos os eventos em que um recurso foi acessado.operation:authentication
localiza todos os eventos em que um evento de autenticação foi realizado.operation:create
localiza todos os eventos em que um recurso foi criado.operation:modify
localiza todos os eventos em que um recurso existente foi modificado.operation:remove
localiza todos os eventos em que um recurso existente foi removido.operation:restore
localiza todos os eventos em que um recurso existente foi restaurado.operation:transfer
localiza todos os eventos em que um recurso existente foi transferido.
Pesquisar com base no repositório
Use o qualificador repo
para limitar as ações a um repositório específico. Por exemplo:
repo:"my-org/our-repo"
localiza todos os eventos que ocorreram no repositórioour-repo
na organizaçãomy-org
.repo:"my-org/our-repo" repo:"my-org/another-repo"
localiza todos os eventos que ocorreram nos repositóriosour-repo
eanother-repo
na organizaçãomy-org
.-repo:"my-org/not-this-repo"
exclui todos os eventos que ocorreram no repositórionot-this-repo
na organizaçãomy-org
.
Observe que você deve incluir o nome da conta dentro do qualificador repo
e colocá-lo entre aspas ou escapar /
com um \
; a busca apenas por repo:our-repo
ou repo:my-org/our-repo
não funcionará.
Pesquisar com base no usuário
O qualificador actor
pode definir o escopo de eventos com base no autor da ação. Por exemplo:
actor:octocat
localiza todos os eventos realizados poroctocat
.actor:octocat actor:hubot
localiza todos os eventos realizados poroctocat
ouhubot
.-actor:hubot
exclui todos os eventos realizados porhubot
.
Observe que só é possível usar um nome de usuário do GitHub Enterprise Server, e não o nome verdadeiro da pessoa.
Pesquisar com base na ação
Para pesquisar eventos específicos, use o qualificador action
na consulta. As ações listadas no log de auditoria são agrupadas em diferentes categorias. Para ver a lista completa de eventos em cada categoria, confira Eventos de log de auditoria para sua organização.
Nome da categoria | Descrição |
---|---|
auto_approve_personal_access_token_requests | Contém atividades relacionadas à política de aprovação de sua organização para fine-grained personal access tokens. Para saber mais, confira Como configurar uma política de token de acesso pessoal para a organização. |
dependabot_alerts | Contém as atividades de configuração no nível da organização para o Dependabot alerts em repositórios existentes. Para saber mais, confira Sobre alertas do Dependabot. |
dependabot_alerts_new_repos | Contém atividades de configuração no nível da organização para Dependabot alerts em novos repositórios criados na organização. |
dependabot_security_updates | Contém as atividades de configuração no nível da organização para Dependabot security updates em repositórios existentes. Para saber mais, confira Configurando as atualizações de segurança do Dependabot. |
dependabot_security_updates_new_repos | Contém atividades de configuração de nível da organização nas Dependabot security updates para os repositórios criados na organização. |
discussion_post | Contém atividades relacionadas às discussões postadas em uma página da equipe. |
discussion_post_reply | Contém todas as atividades relacionadas às respostas de discussões postadas em uma página da equipe. |
enterprise | Contém atividades relacionadas às configurações da empresa. |
hook | Tem todas as atividades relacionadas a webhooks. |
integration_installation | Contém atividades relacionadas às integrações instaladas em uma conta. |
integration_installation_request | Contém todas as atividades relacionadas a solicitações de integrantes da organização para proprietários aprovarem integrações para uso na organização. |
issue | Contém atividades relacionadas à exclusão de um problema. |
members_can_create_pages | Contém atividades relacionadas ao gerenciamento da publicação de sites do GitHub Pages para repositórios na organização. Para saber mais, confira Gerenciar a publicação dos sites do GitHub Pages para a sua organização. |
org | Contém atividades relacionadas à associação a uma organização. |
org_secret_scanning_automatic_validity_checks | Contém atividades no nível da organização relacionadas à habilitação e à desabilitação de verificações de validade automáticas para o secret scanning. Para saber mais, confira Gerenciando as configurações de segurança e de análise da sua organização. |
org_secret_scanning_custom_pattern | Contém atividades relacionadas aos padrões personalizados de secret scanning em uma organização. Para saber mais, confira Definir padrões personalizados para a verificação de segredo. |
organization_default_label | Contém todas as atividades relacionadas a rótulos padrão para repositórios em sua organização. |
oauth_application | Contém todas as atividades relacionadas a OAuth apps. |
packages | Contém todas as atividades relacionadas ao GitHub Packages. |
personal_access_token | Contém atividades relacionadas a fine-grained personal access tokens na organização. Para saber mais, confira Gerenciar seus tokens de acesso pessoal. |
profile_picture | Contém todas as atividades relacionadas à foto do perfil de sua organização. |
project | Contém todas as atividades relacionadas a projetos (clássicos). |
protected_branch | Contém todas as atividades relacionadas aos branches protegidos. |
repo | Contém atividades relacionadas aos repositórios de propriedade de sua organização. |
repository_secret_scanning | Contém atividades de nível do repositório relacionadas à secret scanning. Para saber mais, confira Sobre a verificação de segredo. |
repository_secret_scanning_automatic_validity_checks | Contém atividades relacionadas à habilitação e desabilitação de verificações automáticas de validade do secret scanning em um repositório. Para saber mais, confira Habilitando a varredura de segredos para seu repositório. |
repository_secret_scanning_custom_pattern | Contém atividades em nível de repositório relacionadas a padrões personalizados do secret scanning. Para saber mais, confira Definir padrões personalizados para a verificação de segredo. |
repository_secret_scanning_custom_pattern_push_protection | Contém atividades em nível de repositório relacionadas à proteção de push de um padrão personalizado para o secret scanning. Para saber mais, confira Definir padrões personalizados para a verificação de segredo. |
repository_secret_scanning_push_protection | Contém atividades em nível de repositório relacionadas à proteção de push do secret scanning. Para saber mais, confira Sobre a proteção por push. |
repository_vulnerability_alert | Contém todas as atividades relacionadas ao Dependabot alerts. |
role | Contém todas as atividades relacionadas às funções de repositório personalizadas. |
secret_scanning | Contém atividades de configuração em nível de organização para o secret scanning em repositórios existentes. Para saber mais, confira Sobre a verificação de segredo. |
secret_scanning_new_repos | Contém atividades de configuração no nível da organização para o secret scanning para novos repositórios criados na organização. |
team | Tem todas as atividades relacionadas às equipes na organização. |
team_discussions | Contém as atividades relacionadas ao gerenciamento de discussões da equipe em uma organização. |
workflows | Contém as atividades relacionadas a fluxos de trabalho do GitHub Actions. |
Você pode pesquisar conjuntos específicos de ações usando esses termos. Por exemplo:
action:team
localiza todos os eventos agrupados na categoria da equipe.-action:hook
exclui todos os eventos na categoria do webhook.
Cada categoria tem um conjunto de ações associadas que você pode filtrar. Por exemplo:
action:team.create
localiza todos os eventos em que uma equipe foi criada.-action:hook.events_changed
exclui todos os eventos em que os eventos em um webhook foram alterados.
Pesquisar com base na hora da ação
Use o qualificador created
para filtrar eventos no log de auditoria com base na data em que eles ocorreram. A formatação de data precisa seguir o padrão ISO8601, que é YYYY-MM-DD
(ano-mês-dia). Adicione também informações de hora THH:MM:SS+00:00
opcionais após a data, para fazer a pesquisa por hora, minuto e segundo. Isso é T
, seguido de HH:MM:SS
(hora-minutos-segundos) e uma diferença UTC (+00:00
).
Ao pesquisar uma data, você pode usar qualificadores de maior que, menor que e intervalo para filtrar os resultados ainda mais. Para obter mais informações, confira "Noções básicas de sintaxe de pesquisa".
Por exemplo:
created:2014-07-08
localiza todos os eventos ocorridos em 8 de julho de 2014.created:>=2014-07-08
localiza todos os eventos ocorridos em 8 de julho de 2014 ou após essa data.created:<=2014-07-08
localiza todos os eventos ocorridos em 8 de julho de 2014 ou antes dessa data.created:2014-07-01..2014-07-31
localiza todos os eventos ocorridos no mês de julho de 2014.
Note
O log de auditoria contém dados dos últimos 180 dias.
Pesquisar com base no local
Usando o qualificador country
, você pode filtrar eventos no log de auditoria com base no país de origem. Você pode usar o código de duas letras do país ou o nome completo. Lembre-se de que os país com espaços no nome devem ser colocados entre aspas. Por exemplo:
country:de
localiza todos os eventos ocorridos na Alemanha.country:Mexico
localiza todos os eventos ocorridos no México.country:"United States"
localiza todos os eventos ocorridos nos Estados Unidos.
Usando a API do log de auditoria
É possível interagir com o log de auditoria usando a API do GraphQL. É possível usar o escopo read:audit_log
para acessar o log de auditoria por meio das APIs.
Para garantir que a sua propriedade intelectual esteja segura e que você está mantendo a conformidade na sua organização, use a API do GraphQL do log de auditoria para manter cópias dos seus dados de log de auditoria e monitore: * O acesso às configurações da organização ou do repositório
- As alterações nas permissões
- Os usuários adicionados ou removidos em uma organização, um repositório ou uma equipe
- Os usuários promovidos para administradores
- Alterações nas permissões de um GitHub App
A resposta do GraphQL pode incluir dados por até 90 a 120 dias.
Por exemplo, você pode fazer uma solicitação GraphQL para ver todos os novos integrantes adicionados à organização. Para obter mais informações, confira Interfaces.