EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Headers in Azure Blob Storage

Also by EldoS: CallbackDisk
Create virtual disks backed by memory or custom location, expose disk images as disks and more.
#32086
Posted: 02/03/2015 11:35:14
by Martin Castro (Basic support level)
Joined: 02/03/2015
Posts: 2

Hello,

I'm testing your trial version with Delphi 7.
I try to access the storage azure Blobs using SAS.
After creating the access policy, and store it, I get the Shared Access Signature.
When I try to access the azure blob storage with SAS using TElWinAzureDataStorage.ListContainersInit() function I get the error:
"HTTP request failed with code 403 message is Server failed to authenticate request. Make sure the value of Authorizationheader is FORMED Correctly Including signature"
Does these header values are automatically generated or should I provide them?
Thank you!
#32338
Posted: 02/26/2015 04:18:17
by Martin Castro (Basic support level)
Joined: 02/03/2015
Posts: 2

Hello,

I still can't connect to the service using SAS storage azure.
Make a test application from Example WinAzureDSDemo in Delphi 7.
The onCreate method from the main form remains the same:
Code
procedure TfrmMain.FormCreate(Sender: TObject);
begin
  FStorage := TElWinAzureDataStorage.Create(nil);
  FStorage.OnSecurityHandlerCreated := HandleStorageSecurityHandlerCreated;
  FStorage.OnProgress := HandleStorageProgress;
  FHTTPClient := TElHTTPSClient.Create(nil);
  FHTTPClient.OnCertificateValidate := HandleCertValidate;
  FStorage.HTTPClient := FHTTPClient;
end;


Get a valid container-level SAS (I check it from an application created in Visual Studio)
and make this function to list the blobs:

Code
function TfrmMain.containerBlobList(contName, sas:string; headers:TStringList):TElDataStorageObjectList;
var
  Objs : TElDataStorageObjectList;
begin
  Objs := TElDataStorageObjectList.Create();
  FStorage.List(contName, sas, Objs, headers);
  Result := Objs;
end;

What should I specify in the headers?
According to the documentation, when SAS is used is not necessary to specify authorization header.
Try various combinations in the header, but can not connect. I always get:

"HTTP request failed with code 403, message is Server failed to authenticate request.Make sure the value of Authorizationheader is formed correctly including the signature"

Can you help me or guide me about what I must put in the header?
Took several days researching and testing with no luck.
thank you very much
#32342
Posted: 02/26/2015 06:35:46
by Ken Ivanov (EldoS Corp.)

Hi Martin,

Thank you for reporting the problem. I believe we've managed to reproduce it locally and are working on it at the moment. Once implemented, the workaround will be included to the upcoming SecureBlackbox update which is likely to be released by the end of this week.

Cheers,

Ken

Reply

Statistics

Topic viewed 487 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!