我对 XRay 和 NuGet 提要有疑问。例如,我的项目依赖于 XRay 未阻止的 System.Data.SqlClient 4.1.0,但它依赖于 XRay 阻止的 System.Net.Security (>= 4.0.0)。
当我尝试使用 Artifactory 恢复包时,Nuget 会向 API 询问可用包,然后它会选择正确的包(默认为最低兼容版本)并尝试下载它。下载因 403 Unauthorized 错误和凭据弹出窗口而中断。
示例 API 调用:
https://example.com/artifactory/api/nuget/nuget-org/FindPackagesById()?id=%27System.Net.Security%27
https://example.com/artifactory/api/nuget/nuget-org/Download/System.Net.Security/4.0.0
我在这里看到两个问题:
首先,如果包裹被 XRay 阻止,那么为什么它会在提要中列出。如果包未在提要中列出,则 NuGet 下载下一个可用包(例如,不是 4.0.0 而是 4.0.1)
其次,如果 NuGet 收到 HTTP 403 响应,则它会发送用户弹出窗口以输入凭据以供馈送。
HTTP 403 是 HTTP 服务器与客户端通信的标准 HTTP 状态代码,以指示服务器理解请求,但由于与授权相关的某些原因不会满足它。~ https://en.wikipedia.org/wiki/HTTP_403
是否有任何选项可以在设置中更改此行为,以便 Artifactory 不会在 NuGet 提要中显示被阻止的包?