Skip to main content
Struggling to hire strong frontend developers? Analyze real GitHub code with AI — not take-home tests. Learn More

Creating a user for Azure SQL Server database

Database security is underrated topic. The majority of projects are using single user for all database calls. Doesn't matter if you have several machines accessing your database or users, everyone should access it with his own name. Besides of obvoius security aspect of the topic, there is also a practical one: you can easily profile/debug/log only relevant calls.

Just putting it here:

Assuming that you have administrative access to master database

  1. Create a new login for sql server:
CREATE LOGIN db_rwuser WITH password='pwd';

It would be a nice practice specifying permission in db users name, specially for machine users.

  1. Create user for specific database
CREATE USER db_rwuser FROM LOGIN db_rwuser;
  1. Provide permissions depending on your requirements
EXEC sp_addrolemember 'db_datareader', 'db_rwuser';
EXEC sp_addrolemember 'db_datawriter', 'db_rwuser';

Role definition according to Microsoft docs:

dbdatawriter Members of the dbdatawriter fixed database role can add, delete, or change data in all user tables.

dbdatareader Members of the dbdatareader fixed database role can read all data from all user tables.

Share this article

About the Author

Alexander Lvovich

Alexander Lvovich

Solution Architect | Cloud-Native Platforms, DevOps & Service Mesh

💡 Kubernetes architecture, Istio service mesh, CI/CD, and cloud-native DevOps — from strategy to hands-on implementation. Reach out if you need expert support.


No comments are allowed for this post