Questions tagged «users»

有关数据库用户帐户的问题。

7
数据库与用户与架构之间的区别
我真的对术语数据库,用户和架构感到困惑。谁能解释他们彼此之间的差异(如果有)? 如果它们相同,那么它们之间有什么相似之处?我们如何使用它们?以及我们如何创建它们?
78 oracle  schema  users 

4
用户'root'@'%'的访问被拒绝
我以前在MySQL中访问root用户就好了。但是最近,我不再能够。 我可以正常登录: mysql -u root -p 这是登录后的mysql状态: mysql> status -------------- mysql Ver 14.14 Distrib 5.5.28, for debian-linux-gnu (i686) using readline 6.2 Connection id: 37 Current database: Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.5.28-0ubuntu0.12.04.3 (Ubuntu) Protocol version: 10 Connection: …

1
PostgreSQL角色与用户,授予权限
我现在正在学习PostgreSQL和MySQL之间的区别,因为我有一个新项目,并且我还打算将现有软件从MySQL迁移到PostgreSQL。我实际上已经开始创建一个HTML表,并在两者之间比较了命令(针对用户/数据库/命令提示符等)。在这里阅读答案后,我注意到role似乎已被用作一个小组。与MySQL我有两个用户,基本公共(DELETE,INSERT,SELECT和UPDATE权限),并与一对夫妇的额外权限的管理员用户。 因此基本上是在Windows 7命令提示符下(仅限本地开发)... 角色是用户,组还是宽松使用的术语,特定于PostgreSQL? 如何为数据库中的所有表仅授予特定用户特定的权限? 如何为数据库中的所有表授予特定用户的所有权限? 在使用权限GRANT或REVOKE获得用户权限时,角色与用户相比如何?
27 postgresql  users 

6
如何获得用户所属的所有角色(包括继承的角色)?
假设我有两个Postgresql数据库组,即“作者”和“编辑”,以及两个用户,“ maxwell”和“ ernest”。 create role authors; create role editors; create user maxwell; create user ernest; grant authors to editors; --editors can do what authors can do grant editors to maxwell; --maxwell is an editor grant authors to ernest; --ernest is an author 我想编写一个性能函数,该函数返回maxwell所属角色(最好是其oid)的列表,如下所示: create or replace function get_all_roles() returns oid[] …

5
如何管理数百万的用户?
我即将推出一个非常大的东西。我需要准备服务器和数据库。 我想将每组100,000个用户的组分别放在单独的用户表中,但是我不知道如何关联试图登录到相应用户表的一个用户。 例如,我怎么知道该用户jay@mail.com与用户表#36相关? 在一个用户表中拥有1000万用户还是在100,000中有100个用户会是一样的? Facebook怎么样?我不敢相信他们会拥有一个包含9.5亿个条目的全局用户表。
17 mysql  users 


3
查找孤立的用户
在SQL Server 2005中,有一种方法可以找到在服务器级别不存在的用户(在服务器级别已删除但在删除之前未与数据库解除关联的帐户)或未链接的用户(可能已在服务器级别删除了一个帐户,但未删除数据库级别,然后读取了该帐户,但从未清除过该数据库级别)。 我的服务器非常凌乱,如果要运行查询来查找这些服务器,那就太好了。

5
为什么要完全存储用户密码?
我偶尔会看到一些问题,询问如何安全地存储Web应用程序的用户密码(使用RDBMS,我不是在谈论Facebook或Twitter)。通常的答案是“先给密码加上盐,然后使用强大的算法(例如TDES或SHA512)对密码进行哈希处理”。 我的问题是:作为RDBMS用户,由于大多数引擎具有内置的身份验证机制,为什么我应该完全解决密码存储问题。 例如,如果某个用户X想要在我的Web应用程序上创建一个帐户用户密码Y,则如何发出以下查询错误: CREATE USER X WITH ENCRYPTED PASSWORD Y IN GROUP baseuser; 然后,在我的应用程序中,用户可以使用其凭据打开与数据库的连接,而我不必操心所有密码管理。 我看到此方法有多个优点: 如果RDBMS决定需要更改加密算法,那么我不需要进行任何操作,只需要应用安全更新即可。 对我来说,管理用户授权很容易。如果将用户提升为管理员角色,我只需要将该用户添加到相应的组即可; 现在,SQL注入已变得毫无意义,因为我可以管理权限以完全允许数据库中的每个用户(例如,在诸如SO之类的论坛中,添加新帖子,回复帖子,评论和编辑/删除自己的问题) / answers / comments); 用户帐户“匿名”可用于与我的应用程序的未经身份验证的连接; 每个用户都是他提供的数据的所有者。 但是,对于我在该主题上遇到的几乎每个问题,似乎都已达成共识,那就是这不是必须要做的事情。我的问题是:为什么? 注:第三点是允许的政策在PostgreSQL和安全政策在Microsoft SQL Server。我意识到这些概念是新来的,但是无论如何,既然它们已经出现,为什么我描述的技术没有成为处理用户帐户的标准方法?
10 security  users 

2
查看每个用户的活动MySQL连接
我需要一个查询,该查询将为我提供某个用户到某个数据库的活动或开放连接数。我一直在寻找时间,到目前为止却一无所获。我很近,所以这是我尝试过的。 SHOW STATUS WHERE `variable_name` = 'Threads_connected'; SHOW STATUS LIKE '%onn%'; SELECT * FROM information_schema.processlist WHERE USER='database_user'; 我在一家网络托管公司工作,我们的一位客户一直在竭尽所能max_user_connections,因此在进行故障排除时,由于他不是共享服务器,我为什么现在需要知道他的用户正在使用多少个连接,因此进行故障排除。我目前正在使用MySQL(InnoDB)5.5.36版。任何帮助将不胜感激!

2
在Postgres中拥有成千上万的用户可行吗?
我们正在创建SAAS,最多将有50.000个客户。我们正在考虑在Postgres数据库中为每个客户创建一个用户。我们将每个登录我们服务的用户映射到数据库中的一个用户,以确保他们只能访问自己的数据。我们还希望通过此解决方案在触发器中直接在数据库中实现审计跟踪。如果每个客户都有自己的数据库用户,那么即使两个客户共享相同的数据,也很容易看到谁做了什么。 因为我们的数据库中有50.000个用户,我们是否会遇到一些意外问题?绩效方面或管理方面。也许连接池会更困难,但是我真的不知道我们是否需要它。

2
使用'name'@'%'向MySQL添加用户失败,错误1396
我只是尝试使用添加新用户到MySQL CREATE USER 'name'@'%' IDENTIFIED BY '...' 但是,它失败并显示以下错误: ERROR 1396 (HY000): Operation CREATE USER failed for 'name'@'%' 仅为本地主机添加用户可以正常工作: CREATE USER 'name'@'localhost' IDENTIFIED BY '...' 我不知道可能是什么问题。我将不胜感激。 (我正在使用mysql Ver 14.14 Distrib 5.1.66。)

2
如何将Windows SID转换为SQL Server server_user_sid?
有一个不错的SQL Server函数SUSER_SNAME,可将server_user_sid转换为用户名。这对于将众所周知的Windows SID转换为(可能本地化的)用户名很有用。 例: SELECT SUSER_SNAME(0x01020000000000052000000021020000) -- yields 'BUILTIN\USERS' (or, on a German system, 'VORDEFINIERT\Benutzer') 通过一些Google搜索和反复试验(=手动创建用户,然后进行检查sys.server_principals),我确定了以下等效条件: Built-in User/Group Windows SID SQL Server server_user_sid BUILTIN\USERS S-1-5-32-545 0x01020000000000052000000021020000 NT AUTHORITY\SYSTEM S-1-5-18 0x010100000000000512000000 将Windows SID转换为SQL Server server_user_sids的算法是什么?


3
使用共享登录名时,如何知道用户对审核表执行删除操作?
背景资料: 我正在创建审核表的集合,以跟踪对我的应用程序的一组数据表的更新和删除。 审计记录是通过触发器创建的。 我的应用程序数据库中的DML通常来自服务用于进入数据库的登录名。因此,我认为SYSTEM_USER在触发器中调用时,结果始终是相同的。 我的应用程序当前不存储用户数据,尽管UserId每次执行DML时都会为其分配一个字符串(仅在存储过程中完成)。 我遇到的问题是,当用户删除记录时,我想知道是谁做的。因为它将通过相同的登录完成,所以我不想看到所有操作都是由服务完成的,所以我想看看哪个用户做了。这不是更新的问题,因为我们有一些ModifiedBy列会通过发送更新来UserId更新。 问题是:SYSTEM_USER运行删除操作时,有没有办法将用户信息设置为或以其他方式使用户信息进入触发器? 我现在拥有的“最佳”想法(尽管我不确定这是否是一个好主意)是,在服务中,我检查是否当前UserId作为用户存在于数据库中,如果不是,则创建一个用户为他们反对。然后使用运行存储过程EXECUTE AS User = @UserId。然后,当在存储过程中完成DML并触发触发器时,SYSTEM_USER应从中返回用户EXECUTE AS。

1
MySQL用户对存储过程的权限
我创建了一个简单的存储过程: mysql> CREATE FUNCTION hello (s CHAR(20)) -> RETURNS CHAR(50) DETERMINISTIC -> RETURN CONCAT('Hello, ',s,'!'); Query OK, 0 rows affected, 1 warning (0.00 sec) 但是无法运行它: mysql> SELECT hello('world'); ERROR 1370 (42000): execute command denied to user ''@'localhost' for routine 'test.hello' 我的用户名是否可能为空字符串?如何创建用户并授予特权?我可以授予用户数据库中所有实体的所有特权吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.