我的应用程序在Azure中作为Function App运行。存在存储帐户,应用程序使用托管标识连接到存储帐户(因此不使用连接字符串)。现在,我需要为队列(存在于存储帐户中)生成SAS URL。SAS Url应存在30天。
但是,我还需要确保存储帐户访问密钥正在轮换。
我采用这种方法https://learn.microsoft.com/en-us/azure/key-vault/secrets/tutorial-rotation-dual?tabs=azure-cli来旋转密钥。
在使用连接字符串的情况下,如何交换密钥以生成SAS URL是清楚的。我们只需要改变连接字符串时,关键是旋转。然后我们在代码中生成SAS Url,它是基于存储在连接字符串中的密钥生成的。
但是,在管理身份访问的情况下如何执行此操作?如何选择用于生成SAS URL的密钥?
1条答案
按热度按时间snvhrwxg1#
但是,在管理身份访问的情况下如何执行此操作?如何选择用于生成SAS URL的密钥?
在托管身份访问的情况下,您不需要使用访问密钥。SAS URL将使用分配给托管身份的权限来生成SAS URL。您将生成的SAS URL称为
User Delegation SAS
。下面是在具有读取权限的blob容器上生成用户委托sas令牌的伪代码。sas令牌的有效期为1小时。