我想知道当我在后台使用
az login
登录到 azure 时会发生什么。我仍然登录很长一段时间,这意味着允许访问的机器上存储了某些内容。
获得硬盘驱动器访问权限的对手是否有可能以明文形式读取该密码/令牌来冒充我?
附注我并不是指属于
az login
命令本身一部分的凭据,而是命令在幕后保存的数据。
好问题!
它不存储您的登录凭据,而是存储身份验证刷新令牌。 Microsoft 或您的租户管理员可以更改令牌。
参考:
Azure CLI 不会存储您的任何登录信息。相反,一个 身份验证刷新令牌由 Azure 生成并存储。作为 2018 年 8 月 该令牌在 90 天不活动后被撤销,但是 Microsoft 或您的租户管理员可以更改此值。 令牌被撤销后,您会收到来自 CLI 的一条消息,说明您 需要重新登录。
https://learn.microsoft.com/en-us/cli/azure/authenticate-azure-cli
CLI 存储令牌和其他详细信息,例如您的个人资料、会话详细信息等。详细信息存储在您的主文件夹中。
%HOMEPATH% > .azure
从运行命令(在 Windows 操作系统中)导航至
"%HOMEPATH%"
,然后打开“.Azure”文件夹。您将能够找到您正在寻找的文件。
(更新:信用IAmAliYousefi)
如果您在 WSL(适用于 Linux 的 Windows 子系统)上使用 azure cli,则 .azure 目录不会位于您的 Linux WSL 上(即 ~/.azure),而是位于您的 Windows 系统上。您可以从 Linux WSL 访问它:/mnt/C/Users/YOUR_USERNAME/.azure/
当你感觉“受到攻击”时,可以考虑清理“.azure”文件夹😋
同样在Mac上,看起来相应的令牌也存储在这里
~/.azure/msal_token_cache.json
我还不知道如何在 Azure 上执行此操作,但在 AWS 领域,我用来缓解对手滥用他们在主目录中找到的秘密的机制是创建一个具有超级特定/有限权限的特殊用户/权限,以帮助最大限度地减少您的表面积。
我希望有一天也能学习如何在 Azure 中执行此操作:)
好问题!
为了安全起见,您可以按照本网站上的步骤加密您的登录数据:https://www.sqlshack.com/ Different-ways-to-login-to-azure-automation-using-powershell/