Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 获取SQL Server存储过程中的当前用户_Sql Server_Stored Procedures_Active Directory - Fatal编程技术网

Sql server 获取SQL Server存储过程中的当前用户

Sql server 获取SQL Server存储过程中的当前用户,sql-server,stored-procedures,active-directory,Sql Server,Stored Procedures,Active Directory,我有一个SQL Server 2008 Express R2实例正在从Active Directory进行身份验证。用户将与他们的广告帐户关联的记录存储在数据库中。我希望有存储过程供他们检索记录 因此,该过程可能会使查询从PurchaseOrders中选择*,其中uid=$userid 如何在他们的广告配置文件中找到$userid 谢谢 通常,您希望获得 SELECT SUSER_NAME() 来自SQL Server-这是以域\用户名格式连接的用户 您通常无法从SQL Server机器直接访

我有一个SQL Server 2008 Express R2实例正在从Active Directory进行身份验证。用户将与他们的广告帐户关联的记录存储在数据库中。我希望有存储过程供他们检索记录

因此,该过程可能会使查询
从PurchaseOrders中选择*,其中uid=$userid

如何在他们的广告配置文件中找到
$userid


谢谢

通常,您希望获得

SELECT SUSER_NAME()
来自SQL Server-这是以
域\用户名
格式连接的用户

您通常无法从SQL Server机器直接访问AD以从中获取一些信息。。。。如果无法使用
域\用户名
值,最好将该信息从调用应用程序传递到存储过程

SELECT * FROM PurchaseOrders WHERE uid = CURRENT_USER


我们也可以这样透露密码吗?@Sunny:不,你不能透露密码,而且即使将用户名作为参数传递,也可以代表另一个人执行操作。这太糟糕了@鲁本约翰-不,不会的。你怎么能这么做?@Robino我错了,我假设这里的“参数”是指通过网络发送的REST参数。
SELECT * FROM PurchaseOrders WHERE uid = SUSER_NAME()