我们希望将我们的AWS密钥和机密存储在Azure密钥保管库中,因为我们的VM位于Azure云上。
我们想要的只是将AWS机密和密钥保留在Azure密钥库中,而不是在环境变量中进行设置。
然后,我们想通过代码中的API访问它们。
我对天蓝色的钥匙库非常陌生,想知道是否可行?一个简单的例子/参考会很有帮助。
可以将它们存储在蔚蓝的密钥库中,并通过VM MSI(VM系统分配的受管身份)访问它们。
参考-使用Windows VM系统分配的托管身份访问Azure Key Vault
完成前提条件并授予对MSI的访问权限,在VM中,您可以获取令牌并使用令牌获取密码。
请参阅下面的powershell示例,您也可以使用其他语言,其逻辑相同,这取决于您的要求。
$response = Invoke-WebRequest -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fvault.azure.net' -Method GET -Headers @{Metadata="true"}
$content = $response.Content | ConvertFrom-Json
$KeyVaultToken = $content.access_token
(Invoke-WebRequest -Uri https://<your-key-vault-URL>/secrets/<secret-name>?api-version=2016-10-01 -Method GET -Headers @{Authorization="Bearer $KeyVaultToken"}).content
响应:
{"value":"p@ssw0rd!","id":"https://mytestkeyvault.vault.azure.net/secrets/MyTestSecret/7c2204c6093c4d859bc5b9eff8f29050","attributes":{"enabled":true,"created":1505088747,"updated":1505088747,"recoveryLevel":"Purgeable"}}
更新:
您需要将VM MSI添加到Access Policies
密钥库的中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句