ITADN
Azure/azure-sdk-for-rust
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Azure SDK for Rust

本仓库用于 Azure SDK for Rust 的积极开发。

Crates 📦

所有 Azure SDK for Rust crates 已发布在 crates.io 上。

入门指南

要开始使用某个库,请参阅位于该库项目文件夹中的 README.md 文件。您可以在 /sdk 目录中找到按服务分组的这些库项目文件夹。

如需完整的文件代码示例,请查看任意库项目文件夹中的 /examples 目录。

安装 crates

使用 cargo 从 Azure SDK for Rust 安装 crates。

cargo add azure_identity azure_security_keyvault_secrets tokio

状态

本项目是 azure_sdk*MindFlavor/AzureSDKForRust 的后续项目。这些 crate 已重命名,因此旧的 crate 应被视为完全弃用。

项目结构

每个受支持的 Azure 服务都是独立的 crate。

构建每个 crate 应尽可能简单,如 cargo build 所示,但请查阅每个 crate 的 README 以获取更具体的信息。

需要帮助?

  • 如需示例,请前往任意库项目文件夹中的 examples 子目录,例如 /sdk/identity/azure_identity/examples
  • 有问题或发现 bug?请通过 GitHub Issues 提交 issue。
  • 查阅 previous questions 或在 StackOverflow 上使用 azurerust 标签提出新问题。

数据收集

软件可能会收集有关您及您对软件使用情况的信息,并将其发送给 Microsoft。Microsoft 可能会使用此信息来提供服务并改进我们的产品和服务。您可以按照以下说明关闭遥测。您可以在帮助文档和 Microsoft 的 privacy statement 中了解有关数据收集和使用的更多信息。有关 Azure SDK 收集的数据的更多信息,请访问 Telemetry Guidelines 页面。

遥测配置

默认情况下,请求中会发送一个 User-Agent 头,其值类似于:

azsdk-rust-security_keyvault_secrets/0.4.0 (1.86.0; linux; aarch64)

您可以通过设置 UserAgentOptions::application_id 为您的遥测分配一个可选的应用程序 ID。这将出现在 User-Agent 头的开头。

要完全禁用发送 User-Agent 头,你可以编写一个 Policy 来将其移除:

use async_trait::async_trait;
use azure_core::http::{
    policies::{Policy, PolicyResult},
    Context, Request,
};
use std::sync::Arc;

// Define a policy that will remove the User-Agent header.
#[derive(Debug)]
struct RemoveUserAgent;

#[async_trait]
impl Policy for RemoveUserAgent {
    async fn send(
        &self,
        ctx: &Context,
        request: &mut Request,
        next: &[Arc<dyn Policy>],
    ) -> PolicyResult {
        let headers = request.headers_mut();

        // Note: HTTP headers are case-insensitive but client-added headers are normalized to lowercase.
        headers.remove("user-agent");

        next[0].send(ctx, request, &next[1..]).await
    }
}

For a complete example, see our azure_core example.

报告安全问题和安全漏洞

安全问题和漏洞应通过电子邮件私下报告给 Microsoft Security Response Center (MSRC) secure@microsoft.com。您应在 24 小时内收到回复。如果由于某种原因您未收到回复,请通过电子邮件跟进,以确保我们已收到您的原始消息。更多信息,包括 MSRC PGP 密钥,可在 Security TechCenter 中找到。

我们期待您的想法

功能请求

哪些功能对您很重要?您可以通过查看我们开放的 feature requests 并通过点赞或点踩来分享您的想法。(注意列表按点赞数降序排列。)

设计讨论

我们非常希望将社区的反馈纳入我们的库设计过程中。以下是我们目前正在进行的一些 design discussions 列表。请在 issue 中留下您的评论以参与讨论!

贡献

有关为此仓库做出贡献的详细信息,请参阅 contributing guide

有关 AI 代理应如何与此仓库交互的指导,请参阅 AGENTS.md

本项目欢迎贡献和建议。 大多数贡献需要您同意 Contributor License Agreement (CLA),声明您有权并且确实授予我们 使用您贡献的权利。有关详细信息,请访问 https://cla.opensource.microsoft.com

当您提交拉取请求时,CLA 机器人会自动判断您是否需要提供 CLA,并相应地标记该 PR(例如,状态检查、评论)。只需按照 机器人提供的说明操作即可。您只需在所有使用我们 CLA 的仓库中执行一次此操作。

本项目已采纳 Microsoft 开源行为准则。 有关更多信息,请参阅 行为准则常见问题解答 或 联系 opencode@microsoft.com 提出任何额外的问题或意见。