2017-09-29 15 views
0
私は、Delphiを使用しています

からAzureのテーブルに対する共有アクセス署名(SAS URI)を使用し、Azureテーブルにアクセスしようとしている、と私は成功し、このような何かキーを自分のアカウント名を使用して接続し、説明することができる:デルファイ

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

しかし、代わりに共有アクセスシグネチャを使用してテーブルにアクセスしたいので、ストレージアカウントに完全にアクセスできるため、私のストレージAPIキーを公開したりハードコードしたりする必要はありません。

アカウントキーを使用する代わりに、生成されたSAS URIを使用するように指定する方法を教えてください。

答えて

0

TAzureConnectionInfoを使用しているコードによれば、私はあなたがembarcadero RAD Studio経由でDelphiを使用していたと思います。私はDelphiとRAD Studioに精通していません。しかし、私の経験によれば、AzureサービスがDelphiなどのプログラミング言語用にSDKを直接サポートしていない場合、この言語でサポートされているAzure REST APIをHttpClientで使用するのが最善の方法です。

Authentication for the Azure Storage Servicesの公式REST APIリファレンスを参照して、Table Service REST APIを使用するためのSASトークンを生成することができます。

一方、C#に精通している場合は、C#に公式コードサンプルGetting Started with Shared Access Signatures (SAS)があります。

希望します。

+0

ありがとうございました。 Acureの開発をサポートするDelphiにはたくさんのクラスがあり、私はSASトークンを作成しました。私が気づいていないのは、Delphi/C++ Builderに付属のクラスにそのトークンを適用する方法です。私はC#の例を見て、それが私にいくつかのアイデアを与えるかどうかを見ていきます。私はいつもJSONを自分で処理することができますが、それ以外の場合はDelphiのクラスに頼るほうがずっと簡単です。 –