我创建了一个名为"MYDOMAIN\Domain Users"的登录和数据库用户.我需要找到登录的域用户具有的角色,但是获取当前用户的所有调用都返回域用户名,例如."MYDOMAIN\username"不是数据库用户名,例如."MYDOMAIN \域用户".
例如,此查询返回"MYDOMAIN\username"
select original_login(),suser_name(), suser_sname(), system_user, session_user, current_user, user_name()
Run Code Online (Sandbox Code Playgroud)
此查询返回0
select USER_ID()
Run Code Online (Sandbox Code Playgroud)
我想用户名查询database_role_members是否有任何函数可以返回它或任何其他方式我可以获得当前用户角色?
我们有一个活动目录域(让我们称之为foodomain
)和一个foodomain\fooAppPoolUser
用于IIS应用程序池标识的域用户帐户().
我们希望在此用户帐户下运行应用程序池,而不是在Network Service
新用户帐户下,AppPoolIdentity
因为我们必须访问SQL服务器并且在IIS(具有自己的应用程序池)上有多个应用程序访问不同的数据库.
问题是我无法找到明确的HOW-TO解释,必须为此用户帐户设置哪些用户权限以及如何设置IIS以使其正常工作.
首先我得到错误(不幸的是我记不起哪些错误),然后我添加fooAppPoolUser
到本地管理员组(Administrators
我知道,只是为了测试),然后它工作了.现在我再次删除了用户,重新启动了IIS,它仍然有效.
所以我有点困惑,想知道配置/设置如何让它工作.
我读到的Somwhere,该帐户需要具有" 身份验证后模拟客户端 "用户权限.这就是我将帐户添加到Admin组的原因(用户权限分配是通过组策略阻止的,但如果确实需要,这肯定可以更改.
我希望我很清楚问题是什么,并希望有人得到答案.
我正在编写一个使用PowerShell的GUI工具,只需用户名和按钮点击即可完成大多数与AD相关的任务.我已经完成了所有常用的操作(创建/删除用户,创建/删除安全和分发组,重置密码等),但无法找到解锁"锁定"帐户.
我试图在不使用Quest AD cmdlet的情况下执行此操作,因为我想要一个更独立的解决方案.所以我想知道在Windows 2003域中是否可以使用普通的PowerShell(1.0或2.0).
非常感谢.
我在一个客户端站点,他们有一个从SharePoint开始的应用程序,并正在慢慢迁移到一个非常自定义的ASP.NET应用程序.他们的一些数据元素仍然托管在SharePoint列表中,其中两个当前有问题的是一些"Notes"和"Tasks"(SharePoint设置中相当简单的数据元素,没有什么特别之处).我需要在ASP.NET中做的一件事就是为这些列表自动创建一些新项目并从代码中添加它们.
到目前为止,这很容易.我找到了现有的Web部件,它处理了这些项目的编辑,将调试器附加到它,跟踪它如何获取其值以及它添加到列表中的内容等.但是,添加到列表项中的一个字段是'n'很明显.在现有的Web部件UI中,该字段如下所示:
从本质上讲,它是从当前Windows域进入用户的字段.书籍图标打开一个弹出窗口,允许用户搜索名称等.在我当前的测试中,我在开发机器上以本地管理员身份运行.所以我只是在弹出窗口中查找"admin",并按预期填充"[machine name]\Administrator"字段.然后,在调试中,从字段中提取并输入到SharePoint列表项的值为"1",而不是名称或类似名称.
我假设"1"是本地管理员帐户的标识符.毕竟,这是有道理的.但我的问题是,如何在代码中获取当前登录用户的标识符?我找到了获取当前用户名的代码,但没有找到任何类型的数字(即使它是一个字符串)ID.
此外,这不仅仅发生在ASP.NET应用程序上下文中.还有一个用于笔记本电脑的WPF客户端应用程序,它将生成这些列表项并在连接时将它们同步回服务器.我目前正在假设客户端用户将使用服务器已知的正确域帐户登录.
我想这很简单,我只是没有偶然发现我需要的东西.