Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
Esse recurso está em Beta. O Azure Databricks permite a varredura de segurança do código para espaços de trabalho elegíveis durante a versão beta.
Importante
As varreduras de segurança podem produzir falsos positivos e podem não identificar todos os bugs de segurança.
O Databricks Apps escaneia o código-fonte do seu app em busca de problemas comuns de segurança a cada vez que você implanta uma alteração no código-fonte. Escanear não bloqueia nem faz uma implantação falhar. As descobertas aparecem na página de Segurança do aplicativo, onde um gerenciador de aplicativos pode revisá-las e triá-las.
Como funciona a varredura de segurança de código
A varredura de segurança de código executa análise estática no código-fonte do seu app como parte da implantação:
- É executado quando há alterações no código-fonte: Uma varredura é executada automaticamente quando você implanta uma alteração no código-fonte. Uma implantação que reutiliza uma build existente sem alteração no código-fonte não é escaneada.
- Lê apenas seu código-fonte: O scanner analisa seu código-fonte sem rodá-lo e nunca modifica seu app.
- Sem bloqueio: O scanner reporta as descobertas de segurança, mas não bloqueia nem faz a implantação falhar. Revise e aborde as descobertas com base na gravidade e nos seus requisitos de segurança.
- Falha segura: Se um escaneamento não for concluído, o resultado é registrado como indisponível em vez de limpo, então um escaneamento ausente nunca é confundido com um que está passando.
O que a varredura detecta
A varredura de segurança do código analisa apenas o código-fonte do seu app. Ele não escaneia as dependências do seu app e não realiza análise dinâmica do app em execução.
O scanner utiliza regras de detecção selecionadas, criadas e ajustadas pelo Azure Databricks para aplicativos Databricks. O Azure Databricks pode adicionar, remover ou atualizar regras ao longo do tempo para melhorar a cobertura e a precisão da detecção. As regras detectam classes comuns de vulnerabilidades, incluindo:
- Credenciais e segredos hardcoded
- Injeção de SQL
- XSS (cross-site scripting)
- Falsificação de requisição no lado do servidor (SSRF)
- Travessia de diretório
- Desserialização insegura
- Configuração permissiva de compartilhamento de recursos entre origens (CORS)
- Carregamento inseguro do YAML
- Exposição de tokens de usuário (em nome do usuário)
Observação
Uma varredura limpa não garante que seu app seja seguro. O scanner verifica um conjunto específico de problemas, então problemas que suas regras não cobrem não são detectados. Mantenha suas próprias práticas de revisão de código e segurança, especialmente para aplicativos que lidam com dados sensíveis. Para mais orientações de segurança, veja as melhores práticas de segurança.
Ver resultados de segurança
Você precisa ter a permissão CAN MANAGE em um aplicativo para visualizar suas descobertas de segurança. Consulte Configurar permissões para um aplicativo do Databricks.
Para ver os resultados:
- No seu espaço de trabalho, abra o app. Consulte Exibir os detalhes de um aplicativo Databricks.
- Selecione a guia Segurança.
A página de Segurança mostra as descobertas para a implantação selecionada, agrupadas por arquivo. Cada resultado inclui:
- A verificação correspondente
- O caminho do arquivo e o número da linha
- Um nível de gravidade
- Uma descrição do problema
Os resultados utilizam os seguintes níveis de gravidade:
- Crítico: Um problema de alta gravidade, como uma vulnerabilidade provável, que você deve resolver antes de depender do aplicativo.
- Aviso: Um problema potencial que você deve revisar e corrigir caso se aplique ao seu aplicativo.
- Informação: Uma observação de menor risco ou sugestão de codificação segura para estar ciente.
Um resumo no topo da página mostra o número de achados em aberto, o número de achados críticos, um nível geral de risco e o número de achados que você resolveu ou ignorou. O nível de risco reflete seus achados abertos e sua gravidade; achados que você resolve ou ignora não contam para isso. Filtre os achados por gravidade para focar nas questões que mais importam.
Para revisar os resultados de uma implantação anterior, use o seletor de versão de código para selecionar uma implantação anterior.
Achados da triagem
A triagem permite acompanhar quais achados você abordou. Assim como na visualização dos achados, você deve ter a permissão CAN MANAGE no aplicativo para triá-los.
Cada achado possui um dos seguintes estados:
- Aberto: O estado padrão para uma nova ocorrência.
- Resolvido: Marque um achado como resolvido depois de corrigir o problema subjacente.
- Ignorado: Ignore uma constatação que não se aplica ao seu aplicativo ou que você aceitou como risco conhecido.
Para classificar um resultado, selecione Marcar como resolvido ou Ignorar no resultado. Para mover uma descoberta de volta para aberto, selecione Reabrir. Para triar vários achados ao mesmo tempo, selecione vários achados e aplique uma ação em massa.
O estado de triagem é salvo por cada descoberta e persiste entre as implantações. Se o mesmo problema aparecer em uma implantação posterior, ele mantém o estado que você definiu, para que você não precise refazer triagem de problemas que já revisou.
Resultados da verificação
A página Segurança reflete o resultado da varredura da implementação. O resultado da varredura descreve o que a varredura encontrou, e o status da varredura indica se a varredura foi concluída.
Os resultados refletem as regras de detecção que estavam em vigor quando a varredura foi executada. O Azure Databricks não reescaneia uma implantação existente quando as regras mudam, então um resultado anterior (incluindo Nenhuma descoberta de segurança) pode não refletir as regras atuais. Uma nova varredura é executada automaticamente na próxima alteração do código-fonte.
Os seguintes resultados descrevem o que a varredura encontrou:
| Resultado | Description |
|---|---|
| Nenhum achado de segurança | A varredura foi concluída e não encontrou problemas com o conjunto de regras atual. |
| Conclusões | A varredura encontrou um ou mais problemas para revisar e classificar. |
Os seguintes estados descrevem o estado da própria varredura:
| Status | Description |
|---|---|
| Verificando esta implantação | A varredura está em andamento. A página se atualiza automaticamente quando a varredura termina. |
| Varredura incompleta | A varredura rodou, mas pulou alguns arquivos ou regras, então os resultados podem ser parciais. |
| Resultados da varredura indisponíveis | A varredura não conseguiu ser concluída para essa implantação. |
| Essa implantação não foi escaneada | A implantação reutilizou uma build existente sem alterar o código-fonte. Reimplante novamente após uma alteração de código para escaneá-lo. |