本页面由 AI 辅助从英文翻译而来。如两者存在差异,以英文版本为准。
使用 Provider
另请参阅:
[exec] [shell] [ StackQL Provider Registry ]
StackQL 查询可以针对多个不同的云服务商运行,包括 Google Cloud Platform、Amazon Web Services、Microsoft Azure、Digital Ocean 等。StackQL Provider 规范从 StackQL Provider Registry 拉取,可以使用 StackQL 命令 REGISTRY PULL 完成,也可以使用命令行工具 stackql registry 完成。
安装 Provider
要查看可用 Provider 的列表,请运行以下命令:
REGISTRY LIST;
要安装 Provider,请运行以下命令:
REGISTRY PULL okta;
要查看当前系统上已安装的 Provider,请运行以下命令:
SHOW PROVIDERS;
向 Provider 进行身份验证
向云服务商进行身份验证通常是 StackQL 例程的第一步。SHOW 和 DESCRIBE 等元命令无需身份验证即可针对 Provider 运行,但 SELECT、INSERT 和 EXEC 命令通常需要经过身份验证的会话。
身份验证通过系统上设置的环境变量(或在 CI 系统中以机密形式提供的环境变量)完成,每个 Provider 都有各自默认的专用身份验证变量,因此请通过 StackQL Provider Registry 文档查阅你所用 Provider 的文档。也可以使用全局标志 --env.file 在启动时从 dotenv 风格的文件中加载这些变量。
通过提供多个身份验证对象,你可以在同一个交互式 shell 或非交互式批处理例程中向多个 Provider 进行身份验证,例如:
export AWS_ACCESS_KEY_ID=YOURACCESSKEYID
export AWS_SECRET_ACCESS_KEY=YOURSECRETACCESSKEY
export DIGITALOCEAN_TOKEN=dop_v1_yourdigitaloceantoken
export STACKQL_GITHUB_USERNAME=yourghuser
export STACKQL_GITHUB_PASSWORD=ghp_yourgithubpersonalaccesstoken
当你在单个查询中连接多个 Provider 的数据时,这尤其有用。