问题标签 [dbo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
security - DBO权利风险
我建议管理一个 SQL 2k5 机器的朋友,该机器有几个用户可以通过 dbo 访问多个数据库。问题是:
- 这些用户已经有几个月没有更改密码了,
- 这些用户将他们的 ID 放入应用程序中,应用程序作为 DBO 运行。
所以 - 除了添加/更新/删除表和 procs 的明显 dbo 权限之外,对于将 dbo 访问 SQL 2005 数据库的恶意用户,我可以举出什么危险?
我想提供对数据库和其他用户造成伤害的特定场景。dbo 可以更改服务器上的文件分配吗?DBO 会影响未直接连接到该数据库的其他资源吗?
澄清一下,这是 SQL Server 2005,默认情况下 xp_cmdShell 没有为 DBO 用户授权。我仍然想知道是否存在明显的 CRUD 之外的风险。有人可以用 DBO 做什么?
sql-server - DBO 会对服务器造成什么危害?
除了执行我在 SQL 2005 安装中禁用的 XP_CmdShell 之外,获得对我的数据库的 DBO 权限的恶意用户还能做什么:
- 到我的数据库,
- 到我的服务器?
我正在评估某人获得 DBO 以证明在应用程序中运行“最低权限”用户帐户的最坏情况安全风险。一些人声称,由于我们不使用“机密数据”,因此获得 DBO 的人的影响是微乎其微的。
sql-server - 如何检查我当前是否是 SQL 2000/2005/2008 的数据库所有者
我不记得如何在 TSQL 查询中执行此操作。它是单行的,适合在运行 DML 之前进行测试。该查询类似于 SELECT IS_DBO() 或 SELECT IS(DBO)。
c# - SQL Server 2000 - 以编程方式限制对数据库所有者的访问?
我将如何以编程方式将 SQL Server 2000 中的数据库的访问权限限制为该数据库的数据库所有者?示例...如果我在企业管理器中右键单击“Northwind”数据库上的“属性”,则所有者列为sa
. 我如何将对该数据库的访问限制为仅sa
登录?
sql-server - lu.[TableName] 而不是 dbo.[TableName]?
我的 SQL Server 2005 数据库中的某些表被命名为 lu.[TableName] 而不是 dbo.[TableName]。卢代表什么?
注意:我已经尝试过谷歌
sql - 自引用表上的复合键
对于下面定义的站点表,我们有一个复合主键。从功能上讲,这完全符合我们的意愿。每个站点都应该有一个同区的父站点。以这种方式定义表专门允许这样做。
我的具体问题是关于在复合 PK 上定义的自引用 FK。我听说过一些关于这种特殊设计的意见,它们往往相互矛盾。有些人特别喜欢它,因为它在对复合键的一般理解范围内发挥应有的作用。其他人坚持认为它在理论上是不正确的,并且应该在 FK 中包含一个 [partner_district_id] 字段而不是 [district_id]。这种设计需要验证以强制执行 [district_id] = [partner_district_id],这可以通过检查约束或应用程序级逻辑来完成。
对这些解决方案或任何其他解决方案的进一步意见将不胜感激。
oracle - cakephp 与 oracle:没有分组?
问候,
我正在尝试使用“组”参数来使用 CakePHP 进行查找。
dbms 是 oracle,令我惊讶的是它不起作用(查询中没有 group by)。
例子:
查询返回:
在 DboOracle::renderStatement() 中挖掘源代码我发现了这个:
我很惊讶没有看到 {$group},所以我环顾四周,发现某些 dbo_ 文件确实在查询中包含 {$group},例如 dbo_source.php
这是否意味着 cake 不支持 oracle 上的 group by 声明?还是有我不知道的解决方法?
sql-server - 将 db_denydatawriter 的角色分配给用户 dbo
当我尝试这样做时,我收到以下错误消息:
为 DatabaseRole 'db_denydatawriter' 添加成员失败。(Microsoft.SqlServer.Smo)
附加信息:
执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)
不能使用保留的用户或角色名称“dbo”。(Microsoft SQL Server,错误:15405)
我有一个需要保持“冻结”状态的数据库。 我想维护数据库的所有权,但要防止自己(作为 dbo)意外修改数据。还有另一种方法可以做到这一点吗?
编辑:我决定提出一个新问题来解决以下问题:
数据库中的数据需要保持冻结状态。但是,结构可能会发生变化。
数据库实际上是几个数据库。它们本质上是每半年拍摄一次的生产数据库的快照。然后,用户可以通过从前端 GUI 切换后端数据库来查看历史数据。但是,有时新字段会添加到当前数据库中的表中。如果前端期望这些字段存在,这可能会导致问题。我们当前的解决方案是动态添加字段(用户具有 db_datareader、db_denydatawriter 和 db_ddladmin 角色)。这意味着不能将数据库设为只读,因为这会阻止更改表结构。
sql-server - SqlServer 中的 dbo
我正在将数据库从 Teradata 转换为 SqlServer。我注意到所有表和过程都以前缀“dbo”命名。(例如“dbo.Table1”)。
我想知道是否以及如何摆脱“dbo”,因为它会使转换任务更加容易。
sql-server-2008 - 在共享 SQL Server 上以 dbo 作为所有者创建表和查询?
我正在开发一个数据库,该数据库最终将存在于主机(在托管提供商处)上的共享 SQL Server 2008 数据库上。我注意到所有的表和查询都归 dbo 所有。我想知道在共享主机上这是否是一个安全问题。以及分配数据库对象所有权的最佳实践是什么。我应该在共享托管环境中将 db 对象的所有权转移给 db 的管理员用户吗?
谢谢