如何解决如何正确测试Azure SDK客户端使用的凭据是否有效
我正在尝试创建一个函数,该函数可以给Azure凭据检查其是否有效。
在这种情况下,我要使用ADLS帐户名和帐户密钥。
Azure Java SDK不为此提供API,我正在手动执行以下操作
def testConnection(account: String,accountKey: String): Boolean = {
val storageConnectionString = s"DefaultEndpointsProtocol=https;AccountName=${accountName};AccountKey=${accountKey}"
val storageAccount = CloudStorageAccount.parse(storageConnectionString)
val client = storageAccount.createCloudBlobClient()
Try{ client.downloadServiceProperties() }.isSuccess
}
问题是downloadServiceProperties()
相对较慢,可能需要一分钟左右的时间。他们还有其他更快的选项来检查用户ADLS凭据是否有效吗?
解决方法
尝试DefaultAzureCredential Class,然后调用getToken
以获得连接令牌。如果未检索到令牌,则表明用户未通过身份验证。
请注意,该用户可能已经登录,但没有执行该操作的权限。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。