azure - 包含用户权限

标签 azure azure-sql-database

我为每个客户拥有一个 Azure 托管 SQL 数据库。客户被设置为自己数据库的包含用户,具有以下权限(ALTER、CONTROL、DELETE、EXECUTE、INSERT、SELECT、UPDATE、CONNECT、VIEW DATABASE STATE)。

我不介意客户对其数据库架构进行任何更改,但是是否可以对逻辑服务器进行任何更改或访问同一服务器上的任何其他数据库?主要的安全风险是客户在其数据库上创建其他用户吗?

https://learn.microsoft.com/en-us/sql/relational-databases/databases/security-best-practices-with-contained-databases?view=sql-server-2017

提前致谢。

最佳答案

如果您的数据库用户不是基于逻辑服务器登录创建的,则您没有访问多个数据库的权限。

请引用: Controlling and granting database access to SQL Database and SQL Data Warehouse

正如您提供的链接所述:

包含的数据库中具有 ALTER ANY USER 权限的用户(例如 db_owner 和 db_securityadmin 固定数据库角色的成员)可以在 SQL Server 管理员不知情或没有权限的情况下授予对数据库的访问权限。授予用户对包含的数据库的访问权限会增加针对整个 SQL Server 实例的潜在攻击面。

当客户创建任何其他数据库用户时,请务必谨慎授予用户 ALTER ANY USER 权限。

关于azure - 包含用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53859102/

相关文章:

sql-server - 与 Azure 数据工厂同步数据

azure - 在 Microsoft Azure 门户中创建 SQL 数据库时,如果我的 "Region"不在列表中,该怎么办?

java - 如何从 Azure Key Vault 检索私钥

python - 将 Nao 机器人与 Azure 连接

Azure DevOps VSTest 任务 - appconfig 设置

azure - 如何从 Azure API 管理登录到 App Insights 'send-request'

c# - 从 C# Azure 函数中访问证书

azure - 如何关闭动态架构支持?

powershell - 如何查询Azure功能API

azure - 无法删除 SQL azure 表