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. |
|
continuation
|
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.
|
query |
integer[] |
Si se proporciona, solo devuelve alertas con los identificadores especificados. |
|
|
criteria.
|
query |
Si se proporciona, solo devuelve alertas de este tipo. De lo contrario, devuelve alertas de todos los tipos. |
||
|
criteria.
|
query |
string[] |
Si se proporciona, solo devuelve alertas en estos niveles de confianza. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo se devuelven alertas para esta dependencia. |
|
|
criteria.
|
query |
string (date-time) |
Si se proporciona, solo se devuelven las alertas que se vieron después de esta fecha. |
|
|
criteria.
|
query |
boolean |
Si se proporciona, filtra las alertas en función de si tienen elementos de trabajo vinculados. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo devuelve alertas cuyos títulos coinciden con este patrón. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo se devuelven las alertas creadas para la dependencia con esta licencia. |
|
|
criteria.
|
query |
string (date-time) |
Si se proporciona, solo devuelve alertas que se modificaron desde esta fecha. |
|
|
criteria.
|
query |
boolean |
Si es true o no establecido, solo se devuelven alertas encontradas en la rama predeterminada del repositorio. |
|
|
criteria.
|
query |
string (uuid) |
Si se proporciona con pipelineName, solo se devuelven alertas detectadas en esta fase de canalización. |
|
|
criteria.
|
query |
string |
Si se proporciona con pipelineName, solo se devuelven alertas detectadas en esta fase de canalización. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo se devuelven alertas detectadas en esta canalización. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo incluya alertas para esta referencia. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo devuelve alertas para esta regla. |
|
|
criteria.
|
query |
string |
Si se proporciona, solo devuelve alertas para esta regla. |
|
|
criteria.
|
query |
string[] |
Si se proporciona, solo devuelve alertas en estas gravedades. |
|
|
criteria.
|
query |
string[] |
Si se proporciona, solo devuelve alertas en estos estados. |
|
|
criteria.
|
query |
string (date-time) |
Si se proporciona, solo se devuelven las alertas que se vieron antes de esta fecha. |
|
|
criteria.
|
query |
string |
Si se proporciona con toolName, solo devuelve alertas detectadas por esta herramienta. |
|
|
criteria.
|
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. |
|
|
expand
|
query | |||
|
order
|
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 | |
|
Alert |
|
|
Alert |
Tipo de la alerta. Por ejemplo, secreto, código, etc. |
|
Alert |
Datos de validez de una alerta que formarán parte de las API y la interfaz de usuario de alertas. |
|
Alert |
|
| Confidence |
Nivel de confianza de la alerta. |
|
Dependency |
Tipo de dependencia de esta ubicación lógica. |
| Dismissal |
Información sobre un descarte de alertas |
|
Dismissal |
Motivo del despido |
|
Identity |
|
| License |
Información de licencia para dependencias |
|
License |
Estado de licencia |
|
License |
Tipo de licencia |
|
Logical |
|
|
Physical |
Ubicación en el sistema de control de código fuente donde se encontró el problema |
|
Reference |
Clase que representa una colección de vínculos de referencia rest. |
| Region | |
|
Relation |
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 |
|
Validation |
|
|
Validation |
Resultado de la validación. |
|
Version |
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 |
Tipo de la alerta. Por ejemplo, secreto, código, etc. |
|
| confidence |
Nivel de confianza de la alerta. |
|
| 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 |
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 |
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 |
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 |
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. |
|
| 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 |
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 |
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
| 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 |
Motivo del despido |
|
| message |
string |
Mensaje informativo adjunto al despido |
| stateChangedBy |
string (uuid) |
Identidad que descartó la alerta |
| stateChangedByIdentity |
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 |
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 |
Estado de licencia |
|
| type |
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 |
Tipo de dependencia de esta ubicación lógica. |
|
| 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 |
Detalles sobre la ubicación donde se encontró el problema, incluido un fragmento de código |
|
| versionControl |
Información específica del sistema de control de código fuente sobre la ubicación |
ReferenceLinks
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 |
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 |