在SQL Server表中存储Windows登录

cs3*_*415 6 sql-server types login

是否有在SQL服务器表中存储Windows登录的最佳实践(例如,审计表的AddUser字段)?我见过使用sysname,varchar(255)等的表.

ps如果已经回答,请提前道歉.我无法找到或制定正确的查询来查找.

jha*_*ldt 7

您是否考虑过存储用户SID

  • SUSER_SNAME()可用于将SID转换为用户名.**在调用时*会转到AD,因此它可能很慢(尽管它会缓存响应).还有一些问题:如果将数据库移动到不同的域,所有SID都变得不透明(无法将它们解析为名称),终止的帐户也可能变得不透明,并且SQL登录具有自己的"有效"SID ,一些具有有效的SID格式但不同于Windows(5)的权限(6),有些只是简单有趣的SID格式(0x01,即'sa'SID).某些工具可能只需要Windows SID. (3认同)

Mit*_*ers 0

我真的不知道公认的标准,通常我会看到它们存储为 varchar(255) 尽管在我工作过的系统中。