Hello Najam ,
To consume storage accounts outside of Azure in a web application while discouraging anonymous access and Shared Access Signatures (SAS), one alternative approach is to build a service application (Azure function )that acts as a proxy. In this setup, the user's device authenticates with the service application, which then authorizes access to Azure Storage resources. This method helps to avoid exposing storage account keys on insecure devices, although it does introduce additional overhead since all data transferred between the user's device and Azure Storage must pass through the service application.
Another approach is to utilize Azure Role-Based Access Control (RBAC) to manage access permissions effectively. By assigning specific roles to users or applications, you can control who has access to the storage resources without exposing sensitive keys or using SAS.
References:
Please let us know if you have any other questions
Thanks
Deepanshu