标签: database-security

在MySQL中创建新用户并授予其对一个数据库的完全访问权限

我想在MySQL中创建一个新用户,并且只对一个数据库提供完全访问权限,比如dbTest我用一个命令创建的数据库create database dbTest;.那些MySQL命令会做什么?

mysql access-control database-security

602
推荐指数
6
解决办法
69万
查看次数

Integrated Security = True和Integrated Security = SSPI有什么区别?

我有两个使用集成安全性的应用程序.一个分配Integrated Security = true连接字符串,另一个分配Integrated Security = SSPI.

是什么区别SSPI,并true在集成安全性的情况下?

sql-server security connection-string database-security

502
推荐指数
8
解决办法
57万
查看次数

存储过程的SQL Server权限与动态SQL

我有一个具有应用程序角色的数据库.角色成员都属于Active Directory中的组.我没有赋予角色权限以从表中选择,而是赋予角色对其需要调用的所有存储过程的执行权限.

这工作正常,除了我的一个存储过程,它正在构建一些动态SQL并调用sp_executesql.

动态sql看起来像这样:

SET @SQL = N'
SELECT * 
FROM dbo.uvView1 
INNER JOIN uvView2 ON uvView1.Id = uvView2.Id'

EXEC sp_executesql @SQL
Run Code Online (Sandbox Code Playgroud)

此角色的用户无法调用存储过程.它给出了以下错误,我想这是一种预期:

对象'uvView1',数据库'Foobar',架构'dbo'上的SELECT权限被拒绝.

有没有办法让我的用户成功执行此proc而不赋予动态SQL中所有视图的角色权限?

sql sql-server stored-procedures database-security

11
推荐指数
1
解决办法
6230
查看次数

是否可以获得独立于语言的“ NT AUTHORITY \ NETWORK SERVICE”用户?

今天,我遇到了一个从未遇到过的问题。

我已经开发了使用SQL Server数据库的应用程序。该应用程序具有访问数据库的Windows服务。

由于Windows服务使用网络服务作为用户,因此我需要将该用户添加到数据库中,以便它可以访问它。

该任务由我也开发的安装程序自动完成。

在该安装程序中,我有以下脚本片段:

USE [MyDB]
GO

IF NOT EXISTS(SELECT principal_id FROM sys.database_principals WHERE name = 'NT AUTHORITY\NETWORK SERVICE')
    BEGIN
        /****** Object:  User [NT AUTHORITY\NETWORK SERVICE]    Script Date: 26-10-2018 13:42:57 ******/
        CREATE USER [NT AUTHORITY\NETWORK SERVICE] FOR LOGIN [NT AUTHORITY\NETWORK SERVICE] WITH DEFAULT_SCHEMA=[dbo]

        ALTER ROLE [db_owner] ADD MEMBER [NT AUTHORITY\NETWORK SERVICE]
    END
Run Code Online (Sandbox Code Playgroud)

该脚本几乎总是可以运行,但今天可以安装。

今天,安装是在Windows 7 PC(西班牙语)中进行的。安装程序发送了一条错误消息,提示“ NT AUTHORITY \ NETWORK SERVICE”用户不存在。

查看此问题,我发现该用户在该PC上被称为“ NT AUTHORITY \ Servicio de Red”,即西班牙语中的“ NETWORK SERVICE”。

这很奇怪,因为我还有其他安装有Windows 10西班牙语的PC,但是在该OS中,用户也被称为“ NT AUTHORITY \ NETWORK SERVICE”。

为了解决该PC上的问题,我只需要安装SQL …

sql-server security windows-authentication database-security network-service

10
推荐指数
2
解决办法
645
查看次数

SQL Server 2019 - 服务器主体“sa”无法在当前安全上下文下访问数据库“DB_NAME”

我编写了以下存储过程:

CREATE PROCEDURE dbo.usp_DEMO 
    @LOGINSQL VARCHAR(30), 
    @DBNAME VARCHAR(40) 
WITH EXECUTE AS owner
AS 
    DECLARE @SQL NVARCHAR(1000) 
    SET @SQL = 'USE' 
    SET @SQL = @SQL + ' ' + @DBNAME + ' ' + ' CREATE USER ' + ' ' 
               + @LOGINSQL + ' ' + ' FOR LOGIN ' + ' ' + @LOGINSQL + ' ' 
               + ' ALTER ROLE [DB_OWNER] ADD MEMBER ' + ' ' 
               + @LOGINSQL 
    EXEC sp_executesql @SQL
Run Code Online (Sandbox Code Playgroud)

像这样运行:

use master
go
exec usp_DEMO …
Run Code Online (Sandbox Code Playgroud)

sql-server database-security sql-server-2019

9
推荐指数
2
解决办法
1万
查看次数

如果我的服务器被盗,PostgreSQL数据库的安全性如何?

如果我在PostgreSQL中有一个带有绝密数据数据库的服务器,我的密码实际上是不可能猜到的(手工生成的各种奇怪字符的128个字符串).服务器密码实际上也是不可思议的.

除了密码猜测之外,从这个数据库中获取数据有多容易?

假设:

  1. 服务器上只存在DB.PHP脚本中没有密码或类似的东西
  2. 窃取服务器的人是服务器/ DB /硬盘恢复专家
  3. 我没有使用任何硬盘加密或任何超出常规的保护
  4. 我正在使用Ubuntu Hardy(最新稳定版)

我试图了解有人获得对我服务器硬盘的物理访问所涉及的风险.

database security cracking database-security

8
推荐指数
1
解决办法
7556
查看次数

SECURITY DEFINER - 功能创建者或所有者的特权?

Postgres的官方文档表明,使用SECURITY DEFINER定义的函数以创建它的用户的权限运行.

然而,其他来源,例如此处此处,声称它是该功能所有者的特权.

哪个是对的?

(适用于9.4+)

postgresql execute database-security postgresql-9.4

8
推荐指数
1
解决办法
3651
查看次数

SQL Server 2008 - 触发器是否以与登录/用户相同的权限运行?

只是一个简单的问题:

假设我在数据库中的表上放置了一个插入触发器.

如果通过登录/用户"foobar"将数据插入该表.

触发器是否以与"foobar"相同的访问权限/权限执行?

非常感谢.

t-sql sql-server triggers database-security sql-server-2008

7
推荐指数
1
解决办法
1万
查看次数

如何在MySQL中使用透明数据加密?

我想在MySQL上启用透明数据加密(TDE).我不介意整个数据库是否加密(而不是几个列或行或表).我正在使用它进行研究,所以我正在寻找一些开放和免费的东西.我找到了zNcrypt,但它是一个商业产品.它们本质上是使用开源的eCryptfs,但无法找到正确配置MySQL的方法.任何关于使用eCryptfs与MySQL或任何其他解决方案来启用TDE与MySQL的指针都会非常有用.谢谢!

mysql database-security tde ecryptfs

7
推荐指数
1
解决办法
8522
查看次数

保持用户匿名 - 仅限安全数据库选项 - 一般想法?

我正在开发一个网络应用程序,正在考虑如何保持用户的身份完全匿名.

但是我得出的结论是,我无能为力 - 除了专注于保护数据库不被黑客入侵.

这是StackOverflow上的普遍共识还是我可能错过了任何方法?

所以我想到了:

  • 直接的bcrypt哈希和盐然后由于各种原因导致联系用户.
  • 密码重置.我可以保存恢复问题/答案,但当然答案需要是可读的,以便击败事情.
  • 另一点是他们忘记了那些安全问题或我在注册时生成的用户名.无法将它们链接到帐户.
  • 还想到了(假设我已经征服了上述内容)限制重复用户.如果我进行哈希/盐渍搜索,处理时会非常"沉重"吗?我可以简单地保留一长串使用过的电子邮件,然后将问题再次链接到现有帐户?

有兴趣听听你的想法.

谢谢.

database security database-security bcrypt node.js

6
推荐指数
1
解决办法
207
查看次数