12 个重大版本更新
0.22.0 | 2023 年 9 月 1 日 |
---|---|
0.21.0 | 2023 年 6 月 22 日 |
0.20.0 | 2023 年 5 月 26 日 |
0.15.0 | 2023 年 2 月 23 日 |
0.10.1 | 2022 年 10 月 25 日 |
#1030 in Web 编程
140 每月下载量
140KB
3K SLoC
弗雷塔项目
摘要
Freta SDK
使您能够访问 弗雷塔项目,这是一个用于检查易失性内存镜像的服务。
本库中包含一个工具,freta
,它提供对 弗雷塔项目 服务的命令行访问。
文档
- 服务文档 包含有关如何使用服务以及弗雷塔分析公开的信息的详细信息。
- CLI 参考 包含有关如何使用弗雷塔 CLI 与弗雷塔服务交互的信息。
- 模块文档 描述了与弗雷塔服务进行程序交互的 API 和数据结构。
- 示例 展示了如何利用 SDK 自动化弗雷塔。
安装
cargo install freta
构建
弗雷塔客户端是用 Rust 编写的,需要 Rust 1.64.0(稳定版)或更高版本。
要构建 freta
$ git clone https://github.com/microsoft/project-freta
$ cd project-freta
$ cargo build --release
$ ./target/release/freta --version
0.9.0
使用客户端
$ freta info
{
"api_version": "0.7.2",
"models_version": "0.9.0",
"current_eula": "993C44214D3E5D0EEB92679E41FC0C4D69DA9C37EF97988FB724C7B2493695BB",
"formats": [
"vmrs",
"raw",
"lime",
"core",
"avmh"
]
}
$ freta images upload ~/projects/samples/centos-6-2.6.32-754.17.1.el6/OpenLogic\:CentOS\:6.10\:latest.lime
[2022-10-20T17:37:39Z INFO freta] uploading as image id: 78f6bdc7-31ce-4877-a67e-f7137db248bd
206.99 MiB (25.26 MiB/s)
$ freta images list
[
{
"last_updated": "2022-10-20T17:38:29.7311842Z",
"owner_id": "72f988bf-86f1-41af-91ab-2d7cd011db47_09731d72-f8a6-463c-9efe-ca0bedfd82ae",
"image_id": "78f6bdc7-31ce-4877-a67e-f7137db248bd",
"state": "completed",
"format": "lime",
"tags": {},
"shareable": false
},
]
使用自动化工具与弗雷塔交互
除了作为用户登录弗雷塔服务外,自动化工具还可以使用 Azure 服务主体 进行身份验证。
首先,创建一个服务主体
$ az ad sp create-for-rbac -n YOUR_SERVICE_PRINCIPAL_NAME_HERE
{
"appId": "00000000-0000-0000-0000-000000000000",
"displayName": "YOUR_SERVICE_PRINCIPAL_NAME_HERE",
"password": "REDACTED_PASSWORD_HERE",
"tenant": "REDACTED_TENANT_HERE",
}
然后配置 freta 客户端以使用新创建的服务主体,使用上一个命令的输出中的 appId
作为 --client-id
,将 password
作为 --client-secret
,并将 tenant
作为 --tenant-id
$ freta config --client-id APP_ID_HERE --client-secret PASSWORD_HERE --tenant-id TENANT_HERE
[2023-01-04T19:43:34Z INFO freta] config saved: Config { api url: "https://freta.microsoft.com/", client id: "00000000-0000-0000-0000-000000000000", tenant id: "REDACTED_TENANT_HERE", client secret: "[redacted]", scope: "api://a934fc14-92d7-4127-aecd-bddab35935da/.default" }
在使用服务之前,服务主体必须同意Freta的EULA。这可以通过运行以下命令完成:
$ freta eula accept
从现在开始,客户端可以自动使用。
贡献
本项目欢迎贡献和建议。大多数贡献需要您同意一份贡献者许可协议(CLA),声明您有权,并且实际上确实授予我们使用您贡献的权利。有关详细信息,请访问https://cla.microsoft.com。
当您提交拉取请求时,CLA机器人将自动确定您是否需要提供CLA,并适当装饰PR(例如,标签、评论)。只需遵循机器人提供的说明。您只需在整个使用我们CLA的存储库中执行此操作一次。
本项目已采用Microsoft开源行为准则。有关更多信息,请参阅行为准则FAQ或通过[email protected]联系以提出任何额外的问题或评论。
报告安全问题
安全和漏洞应通过电子邮件私下报告给微软安全响应中心(MSRC),电子邮件地址为[email protected]。您应在24小时内收到回复。如果由于某种原因您没有收到回复,请通过电子邮件跟进以确保我们已收到您的原始信息。更多信息,包括MSRC PGP密钥,可以在安全技术中心找到。
依赖关系
~5–20MB
~305K SLoC