Compartir a través de


Alerts - List

Obtención de alertas para un repositorio

GET https://advsec.dev.azure.com/{organization}/{project}/_apis/alert/repositories/{repository}/alerts?api-version=7.2-preview.1
GET https://advsec.dev.azure.com/{organization}/{project}/_apis/alert/repositories/{repository}/alerts?top={top}&orderBy={orderBy}&criteria.alertIds={criteria.alertIds}&criteria.alertType={criteria.alertType}&criteria.confidenceLevels={criteria.confidenceLevels}&criteria.dependencyName={criteria.dependencyName}&criteria.fromDate={criteria.fromDate}&criteria.hasLinkedWorkItems={criteria.hasLinkedWorkItems}&criteria.keywords={criteria.keywords}&criteria.licenseName={criteria.licenseName}&criteria.modifiedSince={criteria.modifiedSince}&criteria.onlyDefaultBranch={criteria.onlyDefaultBranch}&criteria.phaseId={criteria.phaseId}&criteria.phaseName={criteria.phaseName}&criteria.pipelineName={criteria.pipelineName}&criteria.ref={criteria.ref}&criteria.ruleId={criteria.ruleId}&criteria.ruleName={criteria.ruleName}&criteria.severities={criteria.severities}&criteria.states={criteria.states}&criteria.toDate={criteria.toDate}&criteria.toolName={criteria.toolName}&criteria.validity={criteria.validity}&expand={expand}&continuationToken={continuationToken}&api-version=7.2-preview.1

Parámetros de identificador URI

Nombre En Requerido Tipo Description
organization
path True

string

Nombre de la organización de Azure DevOps.

project
path True

string

Id. de proyecto o nombre del proyecto

repository
path True

string

Nombre o identificador del repositorio

api-version
query True

string

Versión de la API que se va a usar. Debe establecerse en "7.2-preview.1" para usar esta versión de la API.

continuationToken
query

string

Si hay más alertas de las que se pueden devolver, se coloca un token de continuación en el encabezado "x-ms-continuationtoken". Use ese token aquí para obtener la siguiente página de alertas.

criteria.alertIds
query

integer[]

Si se proporciona, solo devuelve alertas con los identificadores especificados.
De lo contrario, devuelva cualquier alerta.

criteria.alertType
query

AlertType

Si se proporciona, solo devuelve alertas de este tipo. De lo contrario, devuelve alertas de todos los tipos.

criteria.confidenceLevels
query

string[]

Si se proporciona, solo devuelve alertas en estos niveles de confianza.
Es necesario especificar High y Other para capturar alertas de todos los niveles de confianza.
De lo contrario, devuelva alertas con un nivel de confianza alto.
Solo se aplica a las alertas secretas.

criteria.dependencyName
query

string

Si se proporciona, solo se devuelven alertas para esta dependencia.
De lo contrario, devuelve alertas para todas las dependencias.
En un envío sarif, se especifica una dependencia (o un componente) como resultado. RelatedLocations[].logicalLocation.
No es aplicable a las alertas secretas.

criteria.fromDate
query

string (date-time)

Si se proporciona, solo se devuelven las alertas que se vieron después de esta fecha.
De lo contrario, devuelve todas las alertas.

criteria.hasLinkedWorkItems
query

boolean

Si se proporciona, filtra las alertas en función de si tienen elementos de trabajo vinculados.
Establezca en "true" para devolver solo alertas con elementos de trabajo vinculados.
Establezca en "false" para devolver solo alertas sin elementos de trabajo vinculados.
Si no se proporciona, devuelve todas las alertas independientemente de los elementos de trabajo vinculados.
No es aplicable a las alertas de análisis de secretos y dependencias.

criteria.keywords
query

string

Si se proporciona, solo devuelve alertas cuyos títulos coinciden con este patrón.

criteria.licenseName
query

string

Si se proporciona, solo se devuelven las alertas creadas para la dependencia con esta licencia.
De lo contrario, devuelva alertas para todas las licencias.
En un envío sarif, se especifica una licencia para una dependencia (o un componente) como resultado. RelatedLocations[].logicalLocation.properties.license.
No es aplicable a las alertas secretas.

criteria.modifiedSince
query

string (date-time)

Si se proporciona, solo devuelve alertas que se modificaron desde esta fecha.
De lo contrario, devuelve todas las alertas.

criteria.onlyDefaultBranch
query

boolean

Si es true o no establecido, solo se devuelven alertas encontradas en la rama predeterminada del repositorio.
Si no se ha completado ninguna ejecución en la rama predeterminada, se usa la última ejecución en lugar de independientemente de la rama usada para esa ejecución. Si es false, devuelva alertas de todas las ramas.
Esta opción se omite si se proporciona ref.
No es aplicable a las alertas secretas.

criteria.phaseId
query

string (uuid)

Si se proporciona con pipelineName, solo se devuelven alertas detectadas en esta fase de canalización.
De lo contrario, devuelve alertas detectadas en todas las fases.
No es aplicable a las alertas secretas.

criteria.phaseName
query

string

Si se proporciona con pipelineName, solo se devuelven alertas detectadas en esta fase de canalización.
De lo contrario, devuelve alertas detectadas en todas las fases.
No es aplicable a las alertas secretas.

criteria.pipelineName
query

string

Si se proporciona, solo se devuelven alertas detectadas en esta canalización.
De lo contrario, devuelve alertas detectadas en todas las canalizaciones.
No es aplicable a las alertas secretas.

criteria.ref
query

string

Si se proporciona, solo incluya alertas para esta referencia.
Si no se proporciona y OnlyDefaultBranch es true, solo se incluyen alertas encontradas en la rama predeterminada o en la última rama de ejecución si no hay ninguna configuración de análisis para la rama predeterminada.
De lo contrario, incluya alertas de todas las ramas.
No es aplicable a las alertas secretas.

criteria.ruleId
query

string

Si se proporciona, solo devuelve alertas para esta regla.
De lo contrario, devuelve alertas de todas las reglas.

criteria.ruleName
query

string

Si se proporciona, solo devuelve alertas para esta regla.
De lo contrario, devuelva alertas para todas las reglas.

criteria.severities
query

string[]

Si se proporciona, solo devuelve alertas en estas gravedades.
De lo contrario, devuelve alertas en cualquier gravedad.

criteria.states
query

string[]

Si se proporciona, solo devuelve alertas en estos estados.
De lo contrario, devuelve alertas en cualquier estado.

criteria.toDate
query

string (date-time)

Si se proporciona, solo se devuelven las alertas que se vieron antes de esta fecha.
De lo contrario, devuelve todas las alertas.

criteria.toolName
query

string

Si se proporciona con toolName, solo devuelve alertas detectadas por esta herramienta.
De lo contrario, devuelve alertas detectadas por todas las herramientas.

criteria.validity
query

string[]

Si se proporciona, solo devuelve alertas con la validez especificada aquí. Si el estado de validez es Desconocido, capture alertas de todos los resultados de validez.
Solo se aplica a las alertas secretas.
El filtrado por estado de validez puede provocar que se devuelvan menos alertas que las solicitadas con el parámetro TOP.
Debido a este comportamiento, se debe confiar en la propiedad ContinuationToken(]>] en el encabezado de respuesta para decidir si es necesario capturar otro lote.

expand
query

AlertListExpandOption

orderBy
query

string

Debe ser "id" "firstSeen" "lastSeen" "fixedOn" o "severity" Defaults to "id"

top
query

integer (int32)

Número máximo de alertas que se van a devolver

Respuestas

Nombre Tipo Description
200 OK

Alert[]

operación correcta

Seguridad

oauth2

Tipo: oauth2
Flujo: accessCode
Dirección URL de autorización: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Dirección URL del token: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Ámbitos

Nombre Description
vso.advsec Concede la capacidad de leer alertas, instancias de resultado, instancias de resultado de análisis

Definiciones

Nombre Description
Alert
AlertListExpandOption
AlertType

Tipo de la alerta. Por ejemplo, secreto, código, etc.

AlertValidityInfo

Datos de validez de una alerta que formarán parte de las API y la interfaz de usuario de alertas.

AlertValidityStatus
Confidence

Nivel de confianza de la alerta.

DependencyKind

Tipo de dependencia de esta ubicación lógica.

Dismissal

Información sobre un descarte de alertas

DismissalType

Motivo del despido

IdentityRef
License

Información de licencia para dependencias

LicenseState

Estado de licencia

LicenseType

Tipo de licencia

LogicalLocation
PhysicalLocation

Ubicación en el sistema de control de código fuente donde se encontró el problema

ReferenceLinks

Clase que representa una colección de vínculos de referencia rest.

Region
RelationMetadata

Metadatos que se van a asociar a la alerta.

Rule

Regla de análisis que provocó la alerta.

Severity

Gravedad de la alerta.

State

El servicio calcula y devuelve este valor. Es un valor basado en los resultados de todas las configuraciones de análisis.

Tool

Herramienta de análisis que puede generar alertas de seguridad

ValidationFingerprint
ValidationResult

Resultado de la validación.

VersionControlDetails

Información para localizar archivos en un sistema de control de código fuente

Alert

Nombre Tipo Description
additionalProperties

object

Propiedades adicionales de esta alerta.

alertId

integer (int64)

Identificador de la alerta. Es único en la organización de Azure DevOps.

alertType

AlertType

Tipo de la alerta. Por ejemplo, secreto, código, etc.

confidence

Confidence

Nivel de confianza de la alerta.

dismissal

Dismissal

Contiene información para el descarte de la alerta si se ha descartado la alerta.

firstSeenDate

string (date-time)

El servicio calcula y devuelve este valor. Este valor representa la primera vez que el servicio ha detectado este problema en una instancia de análisis.

fixedDate

string (date-time)

El servicio calcula y devuelve este valor. Si se ha corregido el problema, este valor representa la hora en que el servicio ha visto este problema corregido en una instancia de análisis.

gitRef

string

Referencia a un objeto git, por ejemplo, referencia de rama.

introducedDate

string (date-time)

El servicio calcula y devuelve este valor. Este valor representa la primera vez que se introdujo la vulnerabilidad.

lastSeenDate

string (date-time)

El servicio calcula y devuelve este valor. Este valor representa la última vez que el servicio ha detectado este problema en una instancia de análisis.

logicalLocations

LogicalLocation[]

Ubicaciones lógicas de la alerta. El servicio calcula y devuelve este valor. Es un valor basado en los resultados de todas las configuraciones de análisis. Un ejemplo de una ubicación lógica es un componente.

physicalLocations

PhysicalLocation[]

El servicio calcula y devuelve este valor. Es un valor basado en los resultados de todas las configuraciones de análisis. Un ejemplo de una ubicación física es una ubicación de archivo.

projectId

string (uuid)

Identificador del proyecto donde se detectó la alerta.

relations

RelationMetadata[]

Relaciones entre alertas y otros artefactos.

repositoryId

string

Identificador del repositorio donde se detectó la alerta.

repositoryUrl

string

Dirección URL del repositorio donde se detectó la alerta.

severity

Severity

Gravedad de la alerta.

state

State

El servicio calcula y devuelve este valor. Es un valor basado en los resultados de todas las configuraciones de análisis.

title

string

El título solo se representará como texto y no admite el formato markdown. Hay un límite máximo de caracteres de 256.

tools

Tool[]

Herramientas que han detectado este problema.

truncatedSecret

string

Una versión truncada o ofuscada del secreto que pertenece a la alerta (si procede).

validationFingerprints

ValidationFingerprint[]

ValidationFingerprints para la comprobación de ejecución del secreto. Solo se devuelve a petición en Get API con el parámetro Expand establecido como ValidationFingerprint (no devuelto en List API)

validityDetails

AlertValidityInfo

Detalles de validez de una alerta. Actualmente, esto solo se aplica a las alertas secretas. En el caso de las alertas secretas, el estado de validez y el tiempo se calculan examinando los resultados de ejecución de las huellas digitales de validación asociadas a una alerta.

AlertListExpandOption

Valor Description
none

No expande.

minimal

Devuelve una representación mínima de una alerta.

AlertType

Tipo de la alerta. Por ejemplo, secreto, código, etc.

Valor Description
unknown

El código tiene un tipo de vulnerabilidad no especificado

dependency

El código usa una dependencia con una vulnerabilidad conocida.

secret

El código contiene un secreto que ahora se ha puesto en peligro y se debe revocar.

code

El código contiene una debilidad determinada por el análisis estático.

AlertValidityInfo

Datos de validez de una alerta que formarán parte de las API y la interfaz de usuario de alertas.

Nombre Tipo Description
validityLastCheckedDate

string (date-time)

validityStatus

AlertValidityStatus

AlertValidityStatus

Valor Description
none

Cuando no hay huellas digitales de validación adjuntas a la alerta.

unknown

Cuando las validaciones de huellas digitales de validación asociadas a la alerta no han sido concluyentes.

active

Cuando se puede aprovechar al menos una huella digital de validación asociada a la alerta.

inactive

Cuando no se pueden aprovechar todas las huellas digitales de validación asociadas a la alerta.

Confidence

Nivel de confianza de la alerta.

Valor Description
high

Alto nivel de confianza para la alerta

other

Otro nivel de confianza para la alerta

DependencyKind

Tipo de dependencia de esta ubicación lógica.

Valor Description
unknown
rootDependency

La dependencia raíz introdujo el componente que se está alertando.

component

Componente que se está alertando.

vulnerableDependency

Dependencia vulnerable. Desuso de este valor. Use Component en su lugar.

Dismissal

Información sobre un descarte de alertas

Nombre Tipo Description
dismissalId

integer (int64)

Identificador único para este despido

dismissalType

DismissalType

Motivo del despido

message

string

Mensaje informativo adjunto al despido

stateChangedBy

string (uuid)

Identidad que descartó la alerta

stateChangedByIdentity

IdentityRef

Identidad que descartó la alerta

DismissalType

Motivo del despido

Valor Description
unknown

Tipo de descarte desconocido

fixed

Se ha corregido el descarte que indica que se ha corregido la alerta.

acceptedRisk

Descarte que indica que el usuario está aceptando un riesgo para la alerta

falsePositive

El descarte que indica que la alerta es un falso positivo y es probable que no se corriga.

agreedToGuidance

Descarte que indica que el usuario está aceptando seguir las instrucciones de licencia.

toolUpgrade

Descarte que indica que se actualizó la herramienta de detección de back-end y la nueva versión de la herramienta no detecta la alerta.

notDistributed

Descarte que indica que la dependencia afectada no se distribuye a los usuarios finales.

IdentityRef

Nombre Tipo Description
_links

ReferenceLinks

Este campo contiene cero o más vínculos interesantes sobre el tema del grafo. Estos vínculos se pueden invocar para obtener relaciones adicionales o información más detallada sobre este tema del grafo.

descriptor

string

El descriptor es la forma principal de hacer referencia al asunto del grafo mientras se ejecuta el sistema. Este campo identificará de forma única el mismo asunto del grafo en cuentas y organizaciones.

directoryAlias

string

En desuso: se puede recuperar consultando al usuario de Graph al que se hace referencia en la entrada "self" del diccionario identityRef "_links".

displayName

string

Este es el nombre para mostrar no único del asunto del grafo. Para cambiar este campo, debe modificar su valor en el proveedor de origen.

id

string

imageUrl

string

En desuso: disponible en la entrada "avatar" del diccionario "_links" identityRef

inactive

boolean

En desuso: se puede recuperar consultando el estado de pertenencia de Graph al que se hace referencia en la entrada "membershipState" del diccionario "_links" de GraphUser.

isAadIdentity

boolean

En desuso: se puede deducir del tipo de sujeto del descriptor (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

En desuso: se puede deducir del tipo de sujeto del descriptor (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

En desuso: no en uso en la mayoría de las implementaciones preexistentes de ToIdentityRef

uniqueName

string

En desuso: use Domain+PrincipalName en su lugar.

url

string

Esta dirección URL es la ruta completa al recurso de origen de este tema del grafo.

License

Información de licencia para dependencias

Nombre Tipo Description
name

string

Nombre de licencia

state

LicenseState

Estado de licencia

type

LicenseType

Tipo de licencia

url

string

Dirección URL de la información de licencia

LicenseState

Estado de licencia

Valor Description
unknown

La información de la licencia no ha sido cosechada por ClaramenteDefined

notHarvested

La información de la licencia no ha sido cosechada por ClaramenteDefined

harvested

La información de la licencia ha sido cosechada por ClaramenteDefined

LicenseType

Tipo de licencia

Valor Description
unknown

El tipo de licencia es desconocido o no se especifica.

permissive

Una licencia permisiva permite que el software se use, modifique y distribuya libremente con restricciones mínimas. Ejemplos: MIT, Apache 2.0.

weakCopyleft

Una licencia de copyleft débil requiere que las modificaciones del software se compartan con la misma licencia, pero no impone restricciones en obras más grandes que incluyen el software. Ejemplos: LGPL.

strongCopyleft

Una licencia de copyleft segura requiere que cualquier trabajo derivado o obras más grandes que incluyan el software también debe distribuirse bajo la misma licencia. Ejemplos: GPL.

networkCopyleft

Una licencia de copyleft de red amplía el requisito de copyleft al software al que se accede a través de una red, lo que requiere que el código fuente esté disponible. Ejemplos: AGPL.

other

Una licencia que no se ajusta a las categorías estándar o que se define de forma personalizada. En CG, indica una licencia comercial.

noAssertion

No se realiza ninguna aserción sobre el tipo de licencia, dejando sin especificar.

LogicalLocation

Nombre Tipo Description
fullyQualifiedName

string

kind

DependencyKind

Tipo de dependencia de esta ubicación lógica.

license

License

La información de licencia solo es aplicable cuando Kind es "Component" y alertType de la alerta con esta ubicación es License

PhysicalLocation

Ubicación en el sistema de control de código fuente donde se encontró el problema

Nombre Tipo Description
filePath

string

Ruta de acceso del archivo donde se encontró el problema

region

Region

Detalles sobre la ubicación donde se encontró el problema, incluido un fragmento de código

versionControl

VersionControlDetails

Información específica del sistema de control de código fuente sobre la ubicación

Clase que representa una colección de vínculos de referencia rest.

Nombre Tipo Description
links

object

Vista de solo lectura de los vínculos. Dado que los vínculos de referencia son de solo lectura, solo queremos exponerlos como de solo lectura.

Region

Nombre Tipo Description
columnEnd

integer (int32)

Columna donde finaliza el fragmento de código

columnStart

integer (int32)

Columna donde se inicia el fragmento de código

lineEnd

integer (int32)

Número de línea donde finaliza el fragmento de código

lineStart

integer (int32)

Número de línea donde se inicia el fragmento de código

RelationMetadata

Metadatos que se van a asociar a la alerta.

Nombre Tipo Description
attributes

object

Cualquier atributo adicional de los metadatos.

rel

string

Tipo de los metadatos.

url

string

Dirección URL de los metadatos.

Rule

Regla de análisis que provocó la alerta.

Nombre Tipo Description
additionalProperties

object

Las propiedades adicionales de esta regla dependen del tipo de regla. Por ejemplo, las reglas de dependencia pueden incluir el identificador cve si está disponible.

description

string

Descripción de lo que detecta esta regla

friendlyName

string

Identificador de regla de texto sin formato

helpMessage

string

Información adicional sobre esta regla

opaqueId

string

Identificador de regla específico de la herramienta

resources

string

Lista de recursos con formato Markdown para obtener más información sobre la regla. En algunos casos, se usa RuleInfo.AdditionalProperties.advisoryUrls en su lugar.

tags

string[]

Etiquetas de clasificación para esta regla

Severity

Gravedad de la alerta.

Valor Description
low
medium
high
critical
note
warning
error
undefined

State

El servicio calcula y devuelve este valor. Es un valor basado en los resultados de todas las configuraciones de análisis.

Valor Description
unknown

La alerta está en un estado indeterminado

active

Se ha detectado una alerta en el código

dismissed

Un usuario descartó la alerta

fixed

El problema ya no se detecta en el código.

autoDismissed

La herramienta ha determinado que el problema ya no es un riesgo

Tool

Herramienta de análisis que puede generar alertas de seguridad

Nombre Tipo Description
name

string

Nombre de la herramienta

rules

Rule[]

Las reglas que define la herramienta

ValidationFingerprint

Nombre Tipo Description
assetFingerprint

object

Representación del valor de clave de la huella digital del recurso.

validationFingerprintHash

string

Hash asociado al secreto.

validationFingerprintJson

string

Representación JSON del secreto. Tenga en cuenta que este campo puede contener el secreto en su formulario sin cifrar. Tenga cuidado al usar este campo.

validityLastUpdatedDate

string (date-time)

Fecha en la que se actualizó por última vez la validez.

validityResult

ValidationResult

Resultado de la validación.

ValidationResult

Resultado de la validación.

Valor Description
none

Valor predeterminado, no se puede deducir información sobre el secreto a partir de esto.

exploitable

Representa un secreto que se puede usar para conectarse a un recurso.

notExploitable

Representa un secreto que no se puede usar para conectarse a un recurso.

inconclusive

Representa un secreto en el que no se puede realizar ninguna determinación sobre su vulnerabilidad de seguridad.

validationNotSupported

Representa un secreto en el que no se puede validar, por ejemplo, falta el validador dinámico.

transientError

Representa un secreto en el que se produjo un error en el proceso de validación debido a un error transitorio, por ejemplo, un problema de red. Este resultado indica que se debe reintentar el proceso de validación.

VersionControlDetails

Información para localizar archivos en un sistema de control de código fuente

Nombre Tipo Description
commitHash

string

itemUrl

string