これを読んでいるこれはarticleです。Azureコンテナのアクセス許可
私は空白のプライベートに設定されている "テスト"と呼ばれる紺碧の容器があります。 そのコンテナには "121/HEEDENNL/story.html"というスコープパッケージがあります
私は以下のコードを使用して、読み取るフォルダの権限を設定しています。 しかし、そのstory.htmlファイルには、適切に実行するためのいくつかの他のファイルが必要です。 ストーリーページが開き、403または404が返されません。 が、ページを正しく実行するために参照しようとしているファイルがロードされていません。
story.htmlが正しく実行されるために必要なすべてのファイルを取得するには、どうすればよいですか?
コンテナのアクセス許可を変更すると、そのファイルが必要なファイルにアクセスできるようになると考えました。
私はここで何が欠けていますか?
public ActionResult ViewContent(int id)
{
const string pageBlobName = "121/HEEDENNL/story.html";
CloudStorageAccount storageAccount = Common.Constants.Azure.ConnectionStringUrl;
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
//// Retrieve a reference to a container.
// CloudBlobContainer learningModulContainer = blobClient.GetContainerReference(Common.Constants.Azure.LearningModulesContainerName);
CloudBlobContainer learningModulContainer = blobClient.GetContainerReference("test");
PrintBlobs(learningModulContainer);
CloudBlockBlob myindexfile = learningModulContainer.GetBlockBlobReference(pageBlobName);
SharedAccessBlobPermissions permission = SharedAccessBlobPermissions.None;
permission = SharedAccessBlobPermissions.Read;
var token = GetSasForBlob(myindexfile, permission,30);
//this isn't finished.....must get learning module
var module = DataAccessService.Get<LearningModule>(id);
var url = $"{Common.Constants.Azure.StorageAccountUrl}{"test"}/{module.ScormPackage.Path.Replace("index_lms", "story")}{token}";
return Redirect(token);
}
public static string GetSasForBlob(CloudBlockBlob blob, SharedAccessBlobPermissions permission, int sasMinutesValid)
{
// var sasToken = blob.GetSharedAccessSignature(new SharedAccessBlobPolicy()
var sasToken = blob.Container.GetSharedAccessSignature(new SharedAccessBlobPolicy()
{
Permissions = permission,
SharedAccessStartTime = DateTime.UtcNow.AddMinutes(-15),
SharedAccessExpiryTime = DateTime.UtcNow.AddMinutes(sasMinutesValid),
});
return string.Format(CultureInfo.InvariantCulture, "{0}{1}", blob.Uri, sasToken);
}
こんにちは@CsharpBeginner、更新はありますか?期待どおりのBLOBリソースにアクセスできますか? –