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 OAuth token.
Cabeçalhos
Name | Type | Valor esperado | Obrigatório? |
---|---|---|---|
Autorização | cadeia | O OAuth 1 token portador com Microsoft Entra ID Application ID claim. | 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.
Solicitar
POST [Geographical URI]/api/analyze?api-version=1.0
Accept: application/json
Content-Type: application/json; charset=utf-8
x-ms-correlation-id: aaaa0000-bb11-2222-33cc-444444dddddd
x-ms-tenant-id: aaaabbbb-0000-cccc-1111-dddd2222eeee
{
"ruleSets": [{
"id": "0ad12346-e108-40b8-a956-9a8f95ea18c9"
}],
"sasUriList": ["https://testenvfakelocation.blob.core.windows.net/mySolution.zip"],
"fileExclusions": ["*jquery*", "*json*"]
}
resposta
HTTP/1.1 202 Accepted
Content-Type: application/json; charset=utf-8
Location: [Geographical URI]/api/status/aaaa0000-bb11-2222-33cc-444444dddddd&api-version=1.0
Consulte também
Use a API da web do verificador Power Apps
Recuperar a lista de conjuntos de regras
Recuperar a lista de regras
Carregar um arquivo
Verifique o status da análise