

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Examine os repositórios Git em busca de informações confidenciais e problemas de segurança usando git-secrets
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets"></a>

*Saurabh Singh, Amazon Web Services*

## Resumo
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-summary"></a>

Esse padrão descreve como usar a ferramenta de código aberto [git-secrets](https://github.com/awslabs/git-secrets) do Labs AWS para escanear os repositórios de origem do Git e encontrar códigos que possam incluir informações confidenciais, como senhas de usuário ou chaves de AWS acesso, ou que tenham outros problemas de segurança.

`git-secrets` verifica confirmações, mensagens de confirmação e fusão para evitar que informações confidenciais, como segredos, sejam adicionadas aos seus repositórios Git. Por exemplo, se uma confirmação, mensagem de confirmação ou qualquer confirmação em um histórico de fusão corresponder a um de seus padrões de expressão regular proibidos e configurados, a confirmação será rejeitada.

## Pré-requisitos e limitações
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-prereqs"></a>

**Pré-requisitos **
+ Um ativo Conta da AWS
+ Um repositório Git que requer uma verificação de segurança
+ Um cliente Git (versão 2.37.1 e superior) instalado

## Arquitetura
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-architecture"></a>

**Arquitetura de destino**
+ Git
+ `git-secrets`

![\[Uso da ferramenta git-secrets para analisar repositórios Git em busca de informações sensíveis.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/4a18e0c8-0935-4ee2-86bf-c1dfcfbc1bcb/images/e4813a76-83c2-4254-b5f4-aafe2b8f2127.png)


 

## Ferramentas
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-tools"></a>
+ A [git-secrets](https://github.com/awslabs/git-secrets) é uma ferramenta que impede que você envie informações confidenciais nos repositórios Git.
+ O [Git](https://git-scm.com/) é um sistema de código aberto de controle de versão distribuído.

## Práticas recomendadas
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-best-practices"></a>
+ Sempre verifique um repositório Git incluindo todas as revisões:

  ```
  git secrets --scan-history
  ```

## Épicos
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-epics"></a>

### Conecte-se a uma EC2 instância
<a name="connect-to-an-ec2-instance"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Conecte-se a uma EC2 instância usando SSH. | Conecte-se a uma instância do Amazon Elastic Compute Cloud (Amazon EC2) usando SSH e um arquivo de par de chaves. Você pode ignorar esta etapa se estiver verificando um repositório em sua máquina local. | AWS geral | 

### Instale o Git.
<a name="install-git"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Instale o Git. | Instale o Git usando o comando:<pre>yum install git -y</pre>Se você estiver usando sua máquina local, poderá instalar um cliente Git para uma versão específica do sistema operacional. Para obter mais informações, acesse o [site do Git](https://git-scm.com/downloads/guis). | AWS geral | 

### Clone o repositório de origem e instale git-secrets
<a name="clone-the-source-repository-and-install-git-secrets"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Clonar o repositório de origem do Git. | Para clonar o repositório Git que você deseja verificar, escolha o comando **clonar Git** no seu diretório inicial. | AWS geral | 
| Clone git-secrets. | Clone o repositório git `git-secrets`.<pre>git clone https://github.com/awslabs/git-secrets.git</pre>Coloque `git-secrets` em algum lugar no seu `PATH ` para que o Git o pegue quando você executa `git-secrets`. | AWS geral | 
| Instalar git-secrets. | **Para Unix e variantes (Linux/macOS):**Você pode usar o destino `install` do `Makefile` (fornecido no repositório `git-secrets`) para instalar a ferramenta. Você pode personalizar o caminho de instalação usando as variáveis `PREFIX` e `MANPREFIX`.<pre>make install</pre>**Para Windows:**Execute o PowerShell `install.ps1` script fornecido no `git-secrets` repositório. Esse script copia os arquivos de instalação para um diretório de instalação (`%USERPROFILE%/.git-secrets` por padrão) e adiciona o diretório ao usuário atual `PATH`.<pre>PS > ./install.ps1</pre>**Para Homebrew (usuários do macOS):**Execute:<pre>brew install git-secrets</pre> | AWS geral | 

### Digitalizar o repositório de código git
<a name="scan-git-code-repository"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Acesse o repositório de origem. | Alterne para o diretório do repositório Git que você deseja verificar:<pre>cd my-git-repository</pre> | AWS geral | 
| Registre o conjunto de regras da AWS (Git hooks). | Para configurar `git-secrets` para verificar seu repositório Git em cada commit, execute o comando: <pre>git secrets --register-aws</pre> | AWS geral | 
| Verificar o repositório. | Execute o comando a seguir para iniciar a verificação do seu repositório:<pre>git secrets -–scan</pre> | AWS geral | 
| Analise o arquivo de saída. | A ferramenta gera um arquivo de saída se encontrar uma vulnerabilidade no seu repositório Git. Por exemplo:<pre>example.sh:4:AWS_SECRET_ACCESS_KEY = *********<br /><br />[ERROR] Matched one or more prohibited patterns<br /><br />Possible mitigations:<br />- Mark false positives as allowed using: git config --add secrets.allowed ...<br />- Mark false positives as allowed by adding regular expressions to .gitallowed at repository's root directory<br />- List your configured patterns: git config --get-all secrets.patterns<br />- List your configured allowed patterns: git config --get-all secrets.allowed<br />- List your configured allowed patterns in .gitallowed at repository's root directory<br />- Use --no-verify if this is a one-time false positive</pre> | AWS geral | 

## Recursos relacionados
<a name="scan-git-repositories-for-sensitive-information-and-security-issues-by-using-git-secrets-resources"></a>
+ [ferramenta git-secrets](https://github.com/awslabs/git-secrets)