【发布时间】:2021-10-19 16:17:15
【问题描述】:
我正在尝试使用 Golang 集成 azure vault。我使用下面的代码来获取关键列表:
func (rcv Resources) KeyList(cred Credentials, subscriptionID, resourceGp, vaultName string) ([]string, error) {
var (
res []string
err error
)
logger.Info("create client for connecting to the azure as vault client for getting key list.")
cli := keyvault.NewKeysClient(subscriptionID)
if cli.Authorizer, err = azureAD.Authorizer(cred.TenantID, cred.ClientID, cred.ClientSecret); err != nil {
logger.Error("can not get authorizer for resources, err : ", err.Error())
return nil, err
}
keyList, err := cli.List(context.Background(), resourceGp, "key-vault-zap-auth-scan2")
if err != nil {
logger.Error("can not get resources list , error : ", err.Error())
return nil, err
}
for _, key := range keyList.Values() {
res = append(res, *key.Name)
}
return res, nil
}
如您所知,我们在 azure key-vault 中存储了不同的对象,例如:密钥、机密和证书
我无法使用 SDK 获取秘密列表,因为它没有秘密客户端。
我该如何解决这个问题?
【问题讨论】:
标签: azure go azure-keyvault azure-sdk