使用Delphi的Azure表的共享访问签名(SAS URI)

时间:2017-09-29 02:43:07

标签: delphi azure-table-storage

我正在使用Delphi并尝试访问Azure表,我可以使用我的帐户名和帐户密钥成功连接,如下所示:

connInfo := TAzureConnectionInfo.Create( nil );
connInfo.AccountName := STORAGE_ACCOUNT;
connInfo.AccountKey := STORAGE_API_KEY;
tables := TAzureTableService.Create( connInfo );

但是,我想使用共享访问签名来访问表,这样我就不必公开和/或硬编码我的存储api密钥,因为这样可以完全访问存储帐户。

那么,我如何指定我想使用生成的SAS URI而不是使用我的帐户密钥?

1 个答案:

答案 0 :(得分:0)

根据您使用TAzureConnectionInfo的代码,我认为您通过embarcadero RAD Studio使用Delphi。我不熟悉Delphi和RAD Studio。但是,根据我的经验,如果Azure服务不支持并直接为Delphi等编程语言提供SDK,则最好的方法是使用此语言支持的HttpClient的Azure REST API。

因此,您可以参考Authentication for the Azure Storage Services的官方REST API参考来生成使用Table Service REST API的SAS令牌。

同时,如果您熟悉C#,则在C#中有一个官方代码示例Getting Started with Shared Access Signatures (SAS)

希望它有所帮助。