Signed URL Provider
Component Detail
Infrastructure
low complexity
Shared Component
backend
0
Dependencies
2
Dependents
2
Entities
0
Integrations
Description
Infrastructure utility that generates time-limited signed URLs for accessing receipt images stored in object storage (Vercel Blob or S3-compatible service). Prevents direct public access to sensitive receipt files by requiring all image access to pass through a server-generated signed URL with a configurable expiry window. Shared by the receipt photo upload feature and the admin oversight feature.
signed-url-provider
Responsibilities
- Generate time-limited signed GET URLs for objects in object storage
- Accept configurable expiry durations per use case
- Abstract the underlying storage provider behind a unified interface
- Validate that the requested object key exists before generating a URL
- Support batch URL generation for multiple receipts in a single request
Interfaces
generateSignedUrl(objectKey, expiresInSeconds)
generateBatchSignedUrls(objectKeys[], expiresInSeconds)
validateObjectExists(objectKey)
getStorageProvider()
revokeSignedUrl(objectKey)
Relationships
Dependents (2)
Components that depend on this component
Related Data Entities (2)
Data entities managed by this component