Compartilhar via


Invocar análise

O início de um trabalho de análise é feito enviando uma solicitação POST à rota de analyze. A análise pode ser um processo demorado, que geralmente dura mais de um minuto. A API primeiro faz alguma validação básica, inicia a solicitação no back-end, enviando um trabalho e depois responde com um código de status 202 e um cabeçalho Location ou com os detalhes de erro apropriados. O valor do cabeçalho Location é uma URL que pode ser usada para verificar o status da solicitação e obter as URLs dos resultados. Há várias opções através da ação POST para personalizar a tarefa com base em seus critérios, como a lista de regras ou conjuntos de regras, arquivos a serem excluídos da análise e muito mais. Você pode iniciar a análise usando o seguinte [Geographical URL]/api/analyze?api-version=1.0.

Nota

É recomendável aguardar entre 15 e 60 segundos entre as verificações de status. A análise geralmente leva entre 1 a 5 minutos para ser executada.
Esta API requer um token OAuth.

Cabeçalhos

Nome Digitar Valor esperado Obrigatório?
Autorização cadeia O token de portador do OAuth 1 com reivindicação de ID do aplicativo do Microsoft Entra (ID). yes
x-ms-tenant-id GUID O ID do locatário do aplicativo. sim
x-ms-correlation-id GUID O identificador para a execução da análise. Você deve fornecer o mesmo ID para toda a execução (carregamento, análise, status). sim
Aceitar objeto application/json, application/x-ms-sarif-v2 sim
Accept-Language string O código ou códigos de linguagem (por exemplo, en-US). O padrão é en-US. Se vários idiomas forem fornecidos, o primeiro será o principal. No entanto, todas as traduções (se o idioma for suportado) serão incluídas. não

Corpo

Opções comumente usadas:

Propriedade Digitar Valor esperado Obrigatório?
sasUriList matriz das cadeias de caracteres Uma lista de URIs que fornece acesso ao serviço para baixar uma única solução, um arquivo zip contendo vários arquivos de solução ou um pacote. Sim
ruleSets matriz de personalizados 0 ou mais Não
ruleSets.id guid O ID do conjunto de regras, que pode ser encontrado consultando a API do conjunto de regras. Não, mas geralmente é isso que você gostaria de usar. Você deve usar este ou ruleCodes.
ruleCodes.code string O ID da regra desejada, que pode ser encontrado consultando o conjunto de regras e as APIs da regra. Não, você deve usar este ou ruleSets.
fileExclusions matriz das cadeias de caracteres Uma lista de nomes de arquivos ou padrões de nomes de arquivos a serem excluídos. Existe suporte para o uso de "*" como curinga no início e/ou no final de um nome de arquivo (por exemplo, *jquery.dll e *jquery*). No

Respostas esperadas

Código de status de HTTP Cenário Result
202 A solicitação de análise foi aceita e o URI da verificação de status foi retornado no cabeçalho Location Nenhum corpo de resultado
400 Um arquivo não zip foi enviado, parâmetros incorretos ou um arquivo foi incluído com um vírus Nenhum corpo de resultado
409 Uma solicitação com um valor de cabeçalho x-ms-correlation-id duplicado foi enviada Nenhum corpo de resultado

Cabeçalhos de resposta esperada

Nome Digitar Valor esperado Obrigatório?
Local URI URL para usar na consulta do status atual e obter os resultados sim

Exemplo: iniciar uma análise

Este é um exemplo de iniciar um trabalho de análise com o conjunto de regras AppSource Certificação, um único arquivo, e excluir arquivos que contêm o texto jquery e json no nome.

Solicitação

POST [Geographical URI]/api/analyze?api-version=1.0
Accept: application/json
Content-Type: application/json; charset=utf-8
x-ms-correlation-id: 9E378E56-6F35-41E9-BF8B-C0CC88E2B832
x-ms-tenant-id: F2E60E49-CB87-4C24-8D4F-908813B22506

{
    "ruleSets": [{
        "id": "0ad12346-e108-40b8-a956-9a8f95ea18c9"
    }],
    "sasUriList": ["https://testenvfakelocation.blob.core.windows.net/mySolution.zip"],
    "fileExclusions": ["*jquery*", "*json*"]
}

Response

HTTP/1.1 202 Accepted
Content-Type: application/json; charset=utf-8
Location: [Geographical URI]/api/status/9E378E56-6F35-41E9-BF8B-C0CC88E2B832&api-version=1.0

Consulte também

Usar a API Web do verificador do Power Apps
Recuperar a lista de conjuntos de regras
Recuperar a lista de regras
Carregar um arquivo
Verificar o status da análise