Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.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帐户访问同一网络上另一台电脑上的文件_Sql_Sql Server_Winforms - Fatal编程技术网

使用只能访问数据库的SQL帐户访问同一网络上另一台电脑上的文件

使用只能访问数据库的SQL帐户访问同一网络上另一台电脑上的文件,sql,sql-server,winforms,Sql,Sql Server,Winforms,我正在使用C#为本地数据库制作一个windows窗体应用程序,图像和视频等文件的路径存储在该数据库中,因此我想知道是否有一种方法可以在另一台PC上打开这些文件,并且只有访问该数据库的帐户?我曾想过将文件放在windows网络上,但这并不安全,因为网络上的每个人都可以访问这些文件,而不仅仅是访问数据库的人 有什么想法吗?1)您可以使用运行应用程序的特定帐户(建议访问数据库和共享文件夹的特定windows/域用户或组)为共享文件夹设置安全性。(提供答案) 2) 您可以通过网络驱动器访问共享文件夹,并

我正在使用C#为本地数据库制作一个windows窗体应用程序,图像和视频等文件的路径存储在该数据库中,因此我想知道是否有一种方法可以在另一台PC上打开这些文件,并且只有访问该数据库的帐户?我曾想过将文件放在windows网络上,但这并不安全,因为网络上的每个人都可以访问这些文件,而不仅仅是访问数据库的人

有什么想法吗?

1)您可以使用运行应用程序的特定帐户(建议访问数据库和共享文件夹的特定windows/域用户或组)为共享文件夹设置安全性。(提供答案)

2) 您可以通过网络驱动器访问共享文件夹,并在访问共享文件夹之前使用以下脚本进行映射:

EXECUTE SP_CONFIGURE 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'xp_cmdshell', '1'
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'show advanced options', 0
RECONFIGURE WITH OVERRIDE


EXEC xp_cmdshell 'net use   z:   \\PC or IP\share   password  /user:domain\user /y '
EXEC xp_cmdshell 'net use z: /delete /y'

EXECUTE SP_CONFIGURE 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'xp_cmdshell', '0'
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'show advanced options', 0
RECONFIGURE WITH OVERRIDE
并在访问共享文件夹后断开连接:

EXECUTE SP_CONFIGURE 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'xp_cmdshell', '1'
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'show advanced options', 0
RECONFIGURE WITH OVERRIDE


EXEC xp_cmdshell 'net use   z:   \\PC or IP\share   password  /user:domain\user /y '
EXEC xp_cmdshell 'net use z: /delete /y'

EXECUTE SP_CONFIGURE 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'xp_cmdshell', '0'
RECONFIGURE WITH OVERRIDE
GO
EXECUTE SP_CONFIGURE 'show advanced options', 0
RECONFIGURE WITH OVERRIDE

可能重复否我想在另一台电脑上打开文件不获取其信息“我想把文件放在windows网络上,但这并不安全,因为网络上的每个人都可以访问它们”制作一个只有一些用户才允许访问的网络目录,将文件放在那里,这样会有好处。