UNPKG

@itwin/object-storage-azure

Version:

Object storage implementation using Azure Blob Storage

39 lines 1.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildBlobSASParameters = buildBlobSASParameters; exports.buildContainerSASParameters = buildContainerSASParameters; /*--------------------------------------------------------------------------------------------- * Copyright (c) Bentley Systems, Incorporated. All rights reserved. * See LICENSE.md in the project root for license terms and full copyright notice. *--------------------------------------------------------------------------------------------*/ const storage_blob_1 = require("@azure/storage-blob"); function buildBlobSASParameters(containerName, readOrWrite, expiresOn, accountName, accountKey, blobName) { const permissions = new storage_blob_1.BlobSASPermissions(); permissions.read = readOrWrite === "read"; permissions.write = readOrWrite === "write"; const parameters = (0, storage_blob_1.generateBlobSASQueryParameters)({ containerName, blobName, permissions, expiresOn, }, new storage_blob_1.StorageSharedKeyCredential(accountName, accountKey)); return parameters.toString(); } function buildContainerSASParameters(containerName, expiresOn, accountName, accountKey) { const permissions = getContainerSASPermissions(); const parameters = (0, storage_blob_1.generateBlobSASQueryParameters)({ containerName, permissions, expiresOn, }, new storage_blob_1.StorageSharedKeyCredential(accountName, accountKey)); return parameters.toString(); } function getContainerSASPermissions() { const permissions = new storage_blob_1.ContainerSASPermissions(); permissions.read = true; permissions.write = true; permissions.delete = true; permissions.list = true; return permissions; } //# sourceMappingURL=Helpers.js.map