Hello @Arindam Chakravorty,
Welcome to Microsoft Q&A Platform. Thank you for reaching out & hope you are doing well.
When you use an IP address restriction (the sip parameter) in an Azure Blob Storage SAS token, Azure expects requests to come from exactly that IP. However, some operations like those performed internally by Azure or Adobe Experience Manager are done by Azure service IPs, not your client IP. Since these Azure internal IPs are outside your restricted IP range, the SAS token validation fails, causing the 403 AuthorizationFailure error.
In contrast, when you remove the IP restriction or allow public access, these operations succeed because there's no IP check blocking the Azure internal service calls.
To fix this:
- Ensure your SAS token has the right permissions and that the start time is set with some buffer to avoid clock skew.
- Remove the IP restriction from the SAS token for operations that involve server-side calls from Azure services or allow a wider IP range that includes Azure service IPs (though this can be complex).
- Consider instead using Azure RBAC with Managed Identity or Private Endpoints for secure access without relying on IP-based SAS restrictions.
- Verify your storage account firewall allows your client IP and optionally enable "Allow Azure services on the trusted services list" for trusted Azure access.
- For troubleshooting, you can temporarily enable logging to compare the SAS "string to sign" for signature issues. Disable logging in production.
Reference:
https://learn.microsoft.com/en-us/troubleshoot/azure/azure-storage/blobs/authentication/storage-troubleshoot-403-errors
https://learn.microsoft.com/en-us/azure/storage/common/storage-network-security
Kindly let us know if the above helps or you need further assistance on this issue.
Please "Accept the Answer" if the information helped you. This will help us and others in the community as well.