Match expiry to the use case
Short-lived links fit one-time downloads or user actions that happen immediately. Longer transfers or delayed workflows may need more time, but should use a controlled renewal path rather than unnecessarily long-lived URLs.
Check clock skew, client download duration, and whether the URL can be revoked before expiry in your provider’s model. Avoid placing signed URLs in public pages, analytics events, or logs where they can be copied.
Validate permissions and delivery
Ensure the signed request grants only the intended object and method, and test that changing the key, method, or relevant parameters invalidates the signature. Do not treat an unpredictable URL as a replacement for authorization design.
Monitor usage and issue a fresh link when needed after rechecking the user’s permissions. If exposure is suspected, use the provider-supported invalidation or credential-rotation process and review access logs.