查找和更改 Amazon SDK 和工具的共享 config 和 credentials 文件的位置 - Amazon SDKs 和工具
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查找和更改 Amazon SDK 和工具的共享 configcredentials 文件的位置

共享的 Amazon configcredentials 文件属于纯文本文件,其中包含 Amazon SDK 和工具的配置信息。这些文件在您的环境中本地保存,由您在该环境中运行的 SDK 代码或 Amazon CLI 命令自动使用。例如,在您自己的计算机上或在 Amazon Elastic Compute Cloud 实例上开发时。

当 SDK 或工具运行时,将会检查这些文件并加载所有可用的配置设置。如果这些文件尚不存在,则 SDK 或工具会自动创建一个基础文件。

默认情况下,这些文件位于您的 home 或用户文件夹下名为 .aws 的文件夹中。

操作系统 文件的默认位置和名称
Linux 和 macOS

~/.aws/config

~/.aws/credentials

Windows

%USERPROFILE%\.aws\config

%USERPROFILE%\.aws\credentials

主目录解析

~ 仅在下列情况下才用于主目录解析:

  • 作为路径的开始

  • 其后紧接 / 或平台特定的分隔符。在 Windows 上,~/~\ 都会解析到主目录。

在确定主目录时,系统会检查以下变量:

  • (所有平台)HOME 环境变量

  • (Windows 平台)USERPROFILE 环境变量

  • (Windows 平台)HOMEDRIVEHOMEPATH 环境变量的串连($HOMEDRIVE$HOMEPATH

  • (可选,根据 SDK 或工具)特定于 SDK 或工具的主路径解析函数或变量

如有可能,如果在路径开头指定了用户的主目录(例如,~username/),则会将其解析到请求的用户名的起始目录(例如,/home/username/.aws/config)。

更改这些文件的默认位置

您可以使用以下任一方法来覆盖 SDK 或工具加载这些文件的位置。

使用环境变量

可以设置以下环境变量,将这些文件的位置或名称从默认值更改为自定义值:

  • config 文件环境变量:AWS_CONFIG_FILE

  • credentials 文件环境变量:AWS_SHARED_CREDENTIALS_FILE

Linux/macOS

您可以通过在 Linux 或 macOS 上运行以下导出命令来指定备用位置。

$ export AWS_CONFIG_FILE=/some/file/path/on/the/system/config-file-name $ export AWS_SHARED_CREDENTIALS_FILE=/some/other/file/path/on/the/system/credentials-file-name
Windows

您可以通过在 Windows 上运行以下setx命令来指定备用位置。

C:\> setx AWS_CONFIG_FILE c:\some\file\path\on\the\system\config-file-name C:\> setx AWS_SHARED_CREDENTIALS_FILE c:\some\other\file\path\on\the\system\credentials-file-name

有关使用环境变量配置系统的更多信息,请参阅使用环境变量进行 Amazon SDK 和工具全局配置

使用 JVM 系统属性

对于在 JVM 上运行的适用于 Kotlin 的 SDK 以及适用于 Java 的 SDK 2.x,您可以通过设置以下 JVM 系统属性,将这些文件的位置或名称从默认值更改为自定义值:

  • config 文件 JVM 系统属性:aws.configFile

  • credentials 文件环境变量:aws.sharedCredentialsFile

有关如何设置 JVM 系统属性的说明,请参阅如何设置 JVM 系统属性。适用于 Java 的 SDK 1.x 不支持这些系统属性。