我想使用Python API从给定的SecretID中获取Secret值。 我有以下代码。在最后一行,我尝试使用get_secret_versions函数获取SECRET_VERSION。该函数返回Object的SecretItemPaged类型。有人可以帮忙从此对象中检索secret_version吗?
#!/usr/bin/python
from azure.keyvault import KeyVaultClient
from azure.common.credentials import ServicePrincipalCredentials
import pprint
#from msrestazure.azure_active_directory import
ServicePrincipalCredentials
credentials = ServicePrincipalCredentials(
client_id = 'XXX',
secret = 'XXX',
tenant = 'XXX'
)
client = KeyVaultClient(credentials)
VAULT_URL='https://xxxxxxx.vault.azure.net'
SECRET_ID='https://xxxxxxxx.vault.azure.net/secrets/2345mat'
SECRET_VERSION= client.get_secret_versions(VAULT_URL , SECRET_ID)
答案 0 :(得分:0)
SecretItemPaged是对象的迭代器,遵循Python协议: https://docs.python.org/3/glossary.html#term-iterable https://docs.python.org/3/glossary.html#term-iterator
话虽如此,然后您可以使用list
来使用它,或进行next
调用,直到获得StopIteration
对象,等等。
最简单的方法是将其作为列表使用:
list(client.get_secret_versions(VAULT_URL , SECRET_ID))