Alerts - List
获取存储库的警报
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
URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 |
|---|---|---|---|---|
|
organization
|
path | True |
string |
Azure DevOps 组织的名称。 |
|
project
|
path | True |
string |
项目 ID 或项目名称 |
|
repository
|
path | True |
string |
存储库的名称或 ID |
|
api-version
|
query | True |
string |
要使用的 API 版本。 这应设置为“7.2-preview.1”才能使用此版本的 API。 |
|
continuation
|
query |
string |
如果警报多于可以返回,则延续标记将放置在“x-ms-continuationtoken”标头中。 在此处使用该令牌获取下一页警报 |
|
|
criteria.
|
query |
integer[] |
如果提供,则仅返回具有指定 ID 的警报。 |
|
|
criteria.
|
query |
如果提供,则仅返回此类型的警报。 否则,返回所有类型的警报。 |
||
|
criteria.
|
query |
string[] |
如果提供,则仅返回这些置信度级别的警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回此依赖项的警报。 |
|
|
criteria.
|
query |
string (date-time) |
如果提供,则仅返回在此日期之后最后一次看到的警报。 |
|
|
criteria.
|
query |
boolean |
如果提供,则根据警报是否具有链接的工作项来筛选警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回游戏与此模式匹配的警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回针对具有此许可证的依赖项创建的警报。 |
|
|
criteria.
|
query |
string (date-time) |
如果提供,则仅返回自此日期以来修改的警报。 |
|
|
criteria.
|
query |
boolean |
如果为 true 或未设置,则仅返回在存储库的默认分支上找到的警报。 |
|
|
criteria.
|
query |
string (uuid) |
如果使用 pipelineName 提供,则仅返回在此管道阶段检测到的警报 |
|
|
criteria.
|
query |
string |
如果使用 pipelineName 提供,则仅返回在此管道阶段检测到的警报 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回在此管道中检测到的警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅包含此 ref 的警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回此规则的警报。 |
|
|
criteria.
|
query |
string |
如果提供,则仅返回此规则的警报。 |
|
|
criteria.
|
query |
string[] |
如果提供,则仅返回这些严重性的警报。 |
|
|
criteria.
|
query |
string[] |
如果提供,则仅返回这些状态中的警报。 |
|
|
criteria.
|
query |
string (date-time) |
如果提供,则仅返回在此日期之前上次看到的警报。 |
|
|
criteria.
|
query |
string |
如果使用 toolName 提供,则仅返回此工具检测到的警报。 |
|
|
criteria.
|
query |
string[] |
如果提供,则仅返回具有此处指定的有效性的警报。 如果有效性状态为“未知”,则提取所有有效性结果的警报。 |
|
|
expand
|
query | |||
|
order
|
query |
string |
必须是“id” “firstSeen” “lastSeen” “fixedOn” 或 “severity” 默认值为“id” |
|
|
top
|
query |
integer (int32) |
要返回的最大警报数 |
响应
| 名称 | 类型 | 说明 |
|---|---|---|
| 200 OK |
Alert[] |
成功作 |
安全性
oauth2
类型:
oauth2
流向:
accessCode
授权 URL:
https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
令牌 URL:
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
作用域
| 名称 | 说明 |
|---|---|
| vso.advsec | 授予读取警报、结果实例、分析结果实例的功能 |
定义
| 名称 | 说明 |
|---|---|
| Alert | |
|
Alert |
|
|
Alert |
警报的类型。 例如机密、代码等。 |
|
Alert |
将属于警报 API 和 UI 的警报的有效性数据。 |
|
Alert |
|
| Confidence |
警报的置信度。 |
|
Dependency |
此逻辑位置的依赖项类型。 |
| Dismissal |
有关警报消除的信息 |
|
Dismissal |
解雇的原因 |
|
Identity |
|
| License |
依赖项的许可证信息 |
|
License |
许可证状态 |
|
License |
许可证类型 |
|
Logical |
|
|
Physical |
在找到问题的源代码管理系统中的位置 |
|
Reference |
表示 REST 引用链接集合的类。 |
| Region | |
|
Relation |
要与警报关联的元数据。 |
| Rule |
导致警报的分析规则。 |
| Severity |
警报的严重性。 |
| State |
此值由服务计算并返回。 它是基于所有分析配置的结果的值。 |
| Tool |
可生成安全警报的分析工具 |
|
Validation |
|
|
Validation |
验证的结果。 |
|
Version |
在源代码管理系统中查找文件的信息 |
Alert
| 名称 | 类型 | 说明 |
|---|---|---|
| additionalProperties |
object |
此警报的其他属性。 |
| alertId |
integer (int64) |
警报的标识符。 它在 Azure DevOps 组织中是唯一的。 |
| alertType |
警报的类型。 例如机密、代码等。 |
|
| confidence |
警报的置信度。 |
|
| dismissal |
包含有关关闭警报的信息( 如果警报已被消除)。 |
|
| firstSeenDate |
string (date-time) |
此值由服务计算并返回。 此值表示服务首次在分析实例中报告此问题。 |
| fixedDate |
string (date-time) |
此值由服务计算并返回。 如果问题已修复,则此值表示服务在分析实例中修复此问题的时间。 |
| gitRef |
string |
对 git 对象的引用,例如分支 ref。 |
| introducedDate |
string (date-time) |
此值由服务计算并返回。 此值表示首次引入漏洞。 |
| lastSeenDate |
string (date-time) |
此值由服务计算并返回。 此值表示服务上次在分析实例中报告此问题的时间。 |
| logicalLocations |
警报的逻辑位置。 此值由服务计算并返回。 它是基于所有分析配置的结果的值。 逻辑位置的示例是组件。 |
|
| physicalLocations |
此值由服务计算并返回。 它是基于所有分析配置的结果的值。 物理位置的示例是文件位置。 |
|
| projectId |
string (uuid) |
检测到警报的项目的标识符。 |
| relations |
警报和其他项目之间的关系。 |
|
| repositoryId |
string |
检测到警报的存储库的标识符。 |
| repositoryUrl |
string |
检测到警报的存储库 URL。 |
| severity |
警报的严重性。 |
|
| state |
此值由服务计算并返回。 它是基于所有分析配置的结果的值。 |
|
| title |
string |
标题将仅呈现为文本,不支持 Markdown 格式。 最大字符限制为 256。 |
| tools |
Tool[] |
检测到此问题的工具。 |
| truncatedSecret |
string |
与警报相关的机密的截断/模糊版本(如果适用)。 |
| validationFingerprints |
用于机密实时检查的 ValidationFingerprints。 仅在 Get API 中按需返回,将 Expand 参数设置为 ValidationFingerprint(列表 API 中未返回) |
|
| validityDetails |
警报的有效性详细信息。 目前,这仅适用于机密警报。 对于机密警报,通过查看与警报关联的验证指纹的实时结果来计算有效性状态和时间。 |
AlertListExpandOption
| 值 | 说明 |
|---|---|
| none |
无展开。 |
| minimal |
返回警报的最小表示形式。 |
AlertType
警报的类型。 例如机密、代码等。
| 值 | 说明 |
|---|---|
| unknown |
代码具有未指定的漏洞类型 |
| dependency |
代码使用具有已知漏洞的依赖项。 |
| secret |
该代码包含已泄露的机密,必须撤销。 |
| code |
代码包含由静态分析确定的弱点。 |
AlertValidityInfo
将属于警报 API 和 UI 的警报的有效性数据。
| 名称 | 类型 | 说明 |
|---|---|---|
| validityLastCheckedDate |
string (date-time) |
|
| validityStatus |
AlertValidityStatus
| 值 | 说明 |
|---|---|
| none |
当没有附加到警报的验证指纹时。 |
| unknown |
当对与警报关联的验证指纹的验证没有结论时。 |
| active |
当至少有一个与警报关联的验证指纹被利用时。 |
| inactive |
当与警报关联的所有验证指纹都不可利用时。 |
Confidence
警报的置信度。
| 值 | 说明 |
|---|---|
| high |
警报的高置信度 |
| other |
警报的其他置信度 |
DependencyKind
此逻辑位置的依赖项类型。
| 值 | 说明 |
|---|---|
| unknown | |
| rootDependency |
根依赖项引入了要发出警报的组件。 |
| component |
正在发出警报的组件。 |
| vulnerableDependency |
易受攻击的依赖项。 弃用此值。 请改用组件。 |
Dismissal
有关警报消除的信息
| 名称 | 类型 | 说明 |
|---|---|---|
| dismissalId |
integer (int64) |
此消除的唯一 ID |
| dismissalType |
解雇的原因 |
|
| message |
string |
附加到解职的信息性消息 |
| stateChangedBy |
string (uuid) |
消除警报的标识 |
| stateChangedByIdentity |
消除警报的标识 |
DismissalType
解雇的原因
| 值 | 说明 |
|---|---|
| unknown |
消除类型未知 |
| fixed |
已修复指示警报的消除 |
| acceptedRisk |
指示用户接受警报风险的消除 |
| falsePositive |
指示警报的消除是误报,可能不会修复。 |
| agreedToGuidance |
表示用户同意遵循许可证指南的解雇。 |
| toolUpgrade |
指示后端检测工具已升级且新版工具未检测到警报的消除。 |
| notDistributed |
指示受影响的依赖项未分发给最终用户的消除。 |
IdentityRef
| 名称 | 类型 | 说明 |
|---|---|---|
| _links |
此字段包含有关图形主题的零个或多个有趣的链接。 可以调用这些链接以获取有关此图形主题的其他关系或更详细的信息。 |
|
| descriptor |
string |
描述符是在系统运行时引用图形主题的主要方法。 此字段将唯一标识帐户和组织中的同一图形主题。 |
| directoryAlias |
string |
已弃用 - 可以通过查询 IdentityRef“_links”字典的“self”条目中引用的 Graph 用户来检索 |
| displayName |
string |
这是图形主题的非唯一显示名称。 若要更改此字段,必须在源提供程序中更改其值。 |
| id |
string |
|
| imageUrl |
string |
已弃用 - 在 IdentityRef“_links”字典的“虚拟形象”条目中可用 |
| inactive |
boolean |
已弃用 - 可以通过查询 GraphUser“_links”字典的“membershipState”条目中引用的 Graph 成员身份状态来检索 |
| isAadIdentity |
boolean |
已弃用 - 可以从描述符的主题类型推断(Descriptor.IsAadUserType/Descriptor.IsAadGroupType) |
| isContainer |
boolean |
已弃用 - 可以从描述符的主题类型推断(描述符.IsGroupType) |
| isDeletedInOrigin |
boolean |
|
| profileUrl |
string |
已弃用 - 不在 ToIdentityRef 的大多数预先存在的实现中使用 |
| uniqueName |
string |
已弃用 - 请改用 Domain+PrincipalName |
| url |
string |
此 URL 是指向此图形主题的源资源的完整路由。 |
License
依赖项的许可证信息
| 名称 | 类型 | 说明 |
|---|---|---|
| name |
string |
许可证名称 |
| state |
许可证状态 |
|
| type |
许可证类型 |
|
| url |
string |
许可证信息的 URL |
LicenseState
许可证状态
| 值 | 说明 |
|---|---|
| unknown |
明确定义的许可证信息尚未获得 |
| notHarvested |
明确定义的许可证信息尚未获得 |
| harvested |
已由 ClearlyDefined 收集许可证的信息 |
LicenseType
许可证类型
| 值 | 说明 |
|---|---|
| unknown |
许可证类型未知或未指定。 |
| permissive |
允许许可的许可证允许软件自由使用、修改和分发,并受到最小的限制。 示例:MIT、Apache 2.0。 |
| weakCopyleft |
弱 copyleft 许可证要求根据同一许可证对软件进行修改,但不对包含该软件的较大工作施加限制。 示例:LGPL。 |
| strongCopyleft |
强 copyleft 许可证要求任何衍生作品或包含该软件的大型作品也必须在同一许可证下分发。 示例:GPL。 |
| networkCopyleft |
网络 copyleft 许可证将 copyleft 要求扩展到通过网络访问的软件,要求提供源代码。 示例:AGPL。 |
| other |
不符合标准类别或自定义定义的许可证。 在 CG 中,它表示商业许可证。 |
| noAssertion |
不会对许可证类型进行断言,但未指定该断言。 |
LogicalLocation
| 名称 | 类型 | 说明 |
|---|---|---|
| fullyQualifiedName |
string |
|
| kind |
此逻辑位置的依赖项类型。 |
|
| license |
仅当 Kind 为“Component”且具有此位置的警报的 alertType 为 License 时,依赖项的许可证信息才适用 |
PhysicalLocation
在找到问题的源代码管理系统中的位置
| 名称 | 类型 | 说明 |
|---|---|---|
| filePath |
string |
找到问题的文件的路径 |
| region |
有关问题所在位置的详细信息,包括代码片段 |
|
| versionControl |
有关位置的源代码管理系统特定信息 |
ReferenceLinks
表示 REST 引用链接集合的类。
| 名称 | 类型 | 说明 |
|---|---|---|
| links |
object |
链接的只读视图。 由于引用链接是只读的,因此我们只想将其公开为只读链接。 |
Region
| 名称 | 类型 | 说明 |
|---|---|---|
| columnEnd |
integer (int32) |
代码片段结束的列 |
| columnStart |
integer (int32) |
代码片段启动的列 |
| lineEnd |
integer (int32) |
代码片段结束的行号 |
| lineStart |
integer (int32) |
代码片段开始的行号 |
RelationMetadata
要与警报关联的元数据。
| 名称 | 类型 | 说明 |
|---|---|---|
| attributes |
object |
元数据的任何其他属性。 |
| rel |
string |
元数据的类型。 |
| url |
string |
元数据的 URL。 |
Rule
导致警报的分析规则。
| 名称 | 类型 | 说明 |
|---|---|---|
| additionalProperties |
object |
此规则的其他属性取决于规则类型。 例如,依赖项规则可能包括 CVE ID(如果可用)。 |
| description |
string |
此规则检测到的内容的说明 |
| friendlyName |
string |
纯文本规则标识符 |
| helpMessage |
string |
有关此规则的其他信息 |
| opaqueId |
string |
特定于工具的规则标识符 |
| resources |
string |
Markdown 格式的资源列表,以了解有关规则的详细信息。 在某些情况下,将改用 RuleInfo.AdditionalProperties.advisoryUrls。 |
| tags |
string[] |
此规则的分类标记 |
Severity
警报的严重性。
| 值 | 说明 |
|---|---|
| low | |
| medium | |
| high | |
| critical | |
| note | |
| warning | |
| error | |
| undefined |
State
此值由服务计算并返回。 它是基于所有分析配置的结果的值。
| 值 | 说明 |
|---|---|
| unknown |
警报处于不确定状态 |
| active |
代码中检测到警报 |
| dismissed |
用户已消除警报 |
| fixed |
代码中不再检测到此问题 |
| autoDismissed |
该工具已确定问题不再存在风险 |
Tool
可生成安全警报的分析工具
| 名称 | 类型 | 说明 |
|---|---|---|
| name |
string |
工具的名称 |
| rules |
Rule[] |
工具定义的规则 |
ValidationFingerprint
| 名称 | 类型 | 说明 |
|---|---|---|
| assetFingerprint |
object |
资产指纹的键值表示形式。 |
| validationFingerprintHash |
string |
与机密关联的哈希。 |
| validationFingerprintJson |
string |
机密的 JSON 表示形式。 请注意,此字段可能包含其未加密形式的机密。 请使用此字段时请谨慎作。 |
| validityLastUpdatedDate |
string (date-time) |
上次更新有效期的日期。 |
| validityResult |
验证的结果。 |
ValidationResult
验证的结果。
| 值 | 说明 |
|---|---|
| none |
默认值,无法从中推断机密的相关信息。 |
| exploitable |
表示可用于连接到资源的机密。 |
| notExploitable |
表示无法用于连接到资源的机密。 |
| inconclusive |
表示一个秘密,无法确定其可利用性。 |
| validationNotSupported |
表示无法验证的机密,例如缺少动态验证程序。 |
| transientError |
表示由于暂时性错误(例如网络问题)验证过程失败的机密。 此结果指示应重试验证过程。 |
VersionControlDetails
在源代码管理系统中查找文件的信息
| 名称 | 类型 | 说明 |
|---|---|---|
| commitHash |
string |
|
| itemUrl |
string |