windows - 从 Windows 中的文件中清除键和值对
问题描述
我正在使用 AWS CLI。我使用 AWS STS 服务担任角色。使用后,我获得临时 AWS 凭证,如 AWS 访问密钥 ID、aws 秘密访问密钥和 aws 会话令牌。我创建了一个 bat 文件来运行 AWS STS 承担角色命令并自动更改 aws 凭证文件。它工作正常。现在使用临时凭据后,我想恢复到原始凭据文件。我可以通过运行 aws configure 命令来更改 aws 访问密钥对。但我想自动清除 aws_session_token 。在linux中,我使用以下命令完成了它。
sed '/^aws_session_token/s/=.*$/=/' credentials
sed -i -e '/aws_session_token/d' credentials
在这里,我首先清除 aws_session_token 的值,然后清除单词“aws_session_token”。我无法弄清楚如何在 Windows 中执行此操作。那么是否有任何 sed 替代方法来删除特定键的值然后键本身?任何帮助表示赞赏。
解决方案
当您运行 AWS CLI 命令时,AWS CLI 会按特定顺序查找凭证 — 首先在环境变量中,然后在配置文件中。因此,在您将临时凭证放入环境变量后,AWS CLI 默认使用这些凭证。(如果您在命令中指定配置文件参数,AWS CLI 会跳过环境变量。相反,AWS CLI 会在配置文件中查找,这样您就可以在需要时覆盖环境变量中的凭证。)
以下示例显示了如何为临时安全凭证设置环境变量,然后调用 AWS CLI 命令。由于 AWS CLI 命令中不包含配置文件参数,因此 AWS CLI 首先在环境变量中查找凭证,因此使用临时凭证。
SET AWS_ACCESS_KEY_ID=YourAccessKEYID
SET AWS_SECRET_ACCESS_KEY=YourSecretKeyAccess
SET AWS_SESSION_TOKEN=YourToken
推荐阅读
- android - 无法将 Firebase 集成到我的 Android 应用中
- c# - 类型扩展特定类的属性参数
- spring - 使用 Springboot Restful 服务向 elasticsearch 插入记录
- regex - 正则表达式匹配 2 个条件
- get - 在没有url的swift 4中从字符串的imageview中显示图像
- node.js - Azure AD - 用于管理 Azure 资源的令牌身份验证
- typescript - 关键对象前的加号是什么意思?
- python - 如何将设备映射和标签规范传递给 Boto3 Python run_instances
- spring - 仅测试许多春季批次中的一项工作
- c# - 具有多对多关系和 Automapper 的 HttpPost