本文档介绍了如何替换 Rust 使用的默认身份验证。Rust 会自动对您向 Google Cloud 服务发出的请求进行身份验证,但您有时可能需要替换默认凭据。
前提条件
本指南使用 Cloud Natural Language API。如需安装此 API,请按照服务快速入门中的说明操作,其中介绍了如何启用服务。
如需查看 Rust 库的完整设置说明,请参阅 Rust 使用入门。
依赖项
您必须在 Cargo.toml 文件中声明依赖项:
cargo add google-cloud-language-v2 google-cloud-auth
默认凭据
建议在 Google Cloud 中对应用进行身份验证时使用应用默认凭据,客户端库默认使用此凭据类型,无需进行任何配置。如需了解如何在不更改应用中的任何代码的情况下配置此默认设置,请参阅应用默认凭证的工作原理。
添加一些 use 声明,以简化示例的其余部分:
使用默认值初始化客户端:
照常使用此客户端: <
替换默认凭据:API 密钥
API 密钥是授予对某些 Google Cloud 服务的访问权限的文本字符串。 使用 API 密钥可以简化开发,因为与其他身份验证方法相比,它们所需的配置更少。API 密钥存在一些风险,如果您计划使用 API 密钥,建议您阅读管理 API 密钥的最佳实践。
编写一个函数,该函数将 API 密钥字符串作为输入参数接收:
添加一些 use 声明,以简化示例的其余部分:
使用 API 密钥构建器创建凭据:
使用
credentials对象初始化客户端:然后照常使用此客户端:
替换默认凭据:服务账号模拟
借助服务账号模拟,您可以代表服务账号进行 API 调用。使用服务账号一文详细讨论了这种身份验证形式。
使用服务账号模拟时,您可以从经过身份验证的主账号(您的用户账号或服务账号)开始,并为具有您的使用场景所需的授权的服务账号请求短期有效凭据。
与为目标服务账号下载服务账号密钥相比,此方法更安全,因为您无需在文件系统甚至内存中持有凭据。
将示例写入一个函数中,该函数接收服务账号标识符作为输入参数。可以是服务账号电子邮件地址,也可以是 Google 为服务账号分配的唯一数字标识符。
添加一些 use 声明,以简化示例的其余部分:
使用模拟的服务账号 Builder 创建凭据:
使用
credentials对象初始化客户端:然后照常使用此客户端:
更多信息
了解 Rust 客户端库中的其他身份验证方法: