[FEATURE REQ] [Blob Storage] Return properties of blob uploaded using EncryptedBlobClient
See original GitHub issueIs your feature request related to a problem? Please describe.
I use synchronous version of the blob clients in the storage SDK (v12.6.0). When a blob is uploaded using BlockBlobClient
, it returns a BlockBlobItem
that contains the properties of the uploaded blob like content MD5, ETag etc. But when EncryptedBlobClient
is used instead for client-side encrypting the blob before uploading, it does not return these properties. So I have to make an additional call to download these properties.
Describe the solution you’d like
Expose the properties returned by the storage service with the PUT
request so the application doesn’t have to make an additional call.
Describe alternatives you’ve considered I couldn’t find an alternative that avoids additional calls.
Additional context
Signature of upload API exposed by BlockBlobClient
:
public Response<BlockBlobItem> uploadWithResponse(InputStream data, long length, BlobHttpHeaders headers,
Map<String, String> metadata, AccessTier tier, byte[] contentMd5, BlobRequestConditions requestConditions,
Duration timeout, Context context);
Signature of upload API exposed by EncryptedBlobClient
:
public void uploadWithResponse(InputStream data, long length, ParallelTransferOptions parallelTransferOptions,
BlobHttpHeaders headers, Map<String, String> metadata, AccessTier tier, BlobRequestConditions requestConditions,
Duration timeout, Context context);
Information Checklist Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report
- Description Added
- Expected solution specified
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (3 by maintainers)
Hey @rickle-msft, this has now become a blocker. I just discovered some application code paths which have write-only credentials to storage so I cannot make that additional call to download blob properties.
Also, as per our discussion in #11231, I’ll be using
BlobClient
instead ofBlockBlobClient
for uploads so this support needs to be added forBlobClient
along withEncryptedBlobClient
.Thank you for that information. Given that it’s early in the month, I think there’s a good chance we can get this in for the June release (May just happened), though that may change based on some work for upcoming service features. I’ll keep you posted, and please let us know if this in any way approaches becoming a blocker for you.