问题标签 [network-service]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 运行 asp.net 应用程序池时,NT AUTHORITY\Network Service 始终可以写入磁盘上的哪个位置?
我将 ac# 网站作为网络服务主体运行。即使在应用程序池上将“加载用户配置文件”设置为true,我似乎也无法解析特殊文件夹(例如Environment.SpecialFolder.ApplicationData
),因为调用Environment.GetFolderPath()
总是返回 C:\,并且 NetworkService 没有写入权限。
我知道如果我运行aspnet_regiis -ga "NT AUTHORITY\NETWORK SERVICE"
我将获得 ASP.NET 临时文件夹的权限。但是,我需要一些永久位置(例如,不是真正的临时文件夹)来写入。我并不特别关心它在哪个位置,只要它在每个运行 Windows 2008/R2/2012/R2 的系统上都相同。
c# - 使用 System.Data.SQLite 在 C# 应用程序中缓慢打开 SQLite 连接
编辑3:
我想我的问题目前已经解决了......我将我的服务和测试应用程序都更改为作为SYSTEM
帐户而不是NetworkService
帐户运行。更改用户帐户的好处是否会持续存在,还是只是暂时的,还有待观察。
原始问题:
我注意到我的 224kB 小型 SQLite DB 在我的 C# 应用程序中打开非常慢,从少量毫秒到 1.5 秒或更多时间不等。下面是我的代码,以及我今天下午添加的所有额外调试语句。我已将其范围缩小到调用,cnn.Open();
如此处的日志中所示:
如您所见,在这种情况下,打开连接需要 1.7 秒。我试过重复这个,并且无法预测后续连接是否会几乎立即打开,或者像这样被延迟。
我考虑过使用某种形式的连接池,但是对于单实例单线程应用程序是否值得追求?现在,我正在创建我的 SQLiteDatabase 类的实例,并为我的每个查询调用以下函数。
编辑:
当然,dbConnection
是连接字符串,由以下函数设置。 inputFile
只是要打开的文件名的字符串路径。
在这一点上,我认为sql
是无关紧要的,因为当 cnn.Open() 停止时,它并没有达到那个地步。
编辑2:
好的,我已经做了更多的测试。在本地运行测试,它在约 5 秒内完成 1000 次迭代循环,每次调用cnn.Open()
. 从我在本地 PC 上执行的同一 Windows 安装程序运行测试,它在大约 25 分钟内完成,每次调用cnn.Open()
.
我做了一个小测试程序,它只调用TestOpenConn()
服务程序中的函数(与 Windows 服务中运行的完全相同的代码),针对位于测试目录中的文件副本运行。在服务器或我的本地 PC 上运行它会产生可接受的性能(在服务器上每次调用 1.95 毫秒,在我的本地 PC 上每次调用 4 毫秒):
这是测试功能:
path - 网络服务帐户不接受本地路径
我正在创建一个作为服务运行的程序,并在白天的某些时间点创建数据库备份(使用 pg_dump.exe)。该程序需要能够将备份文件写入本地驱动器和映射的网络驱动器。
起初,我无法写入网络驱动器,但通过以管理员帐户登录服务解决了这个问题。但是,我的老板希望程序运行时无需用户输入帐户的用户名和密码。
我试图通过使用网络服务帐户(不需要密码并且始终具有相同的名称)来解决这个问题。现在我的程序将写入网络驱动器,而不是本地驱动器!我尝试使用常规C:\<directory name>\
路径语法以及\\<computer name>\C$\<directory name>\
语法以及\\<ip address>\C$\<directory name>\
,但都不起作用。
有没有办法让网络服务帐户访问本地驱动器?
android - Android `getSystemService(Context.NSD_SERVICE)` 需要很长时间
Android 调用applicationContext.getSystemService(Context.NSD_SERVICE)
需要很长时间。有时它会在大约 1 分钟后返回,有时则更长。
知道这里有什么问题吗?
macos - AppleScript - 确定当前 IP 地址绑定的网络服务
以下 AppleScript 代码将返回网络设置中的所有网络服务。
如何仅获取活动网络服务名称而不是全部?
更新说明:在此上下文中,“活动”表示当前 [主要] IPv4 地址绑定到其接口的网络服务。
windows-phone-8 - 使用网络服务获取位置信息
如何在 windows phone8 中使用网络服务获取位置信息(纬度、经度)?不是不使用gps。
c# - NetworkService 异常发生在 WP 8 而不是 WP 8.1 中。有没有办法可以重新编写它以适用于 8 和 8.1?
终于找到了为什么有些用户报告崩溃而其他用户说他们没有问题。我使用 NetworkService 类来检查互联网连接。但显然这不适用于 WP 8。有没有办法重做这个,所以它可以在两个操作系统上工作?我的 NetworkServices.cs 的这一行出现异常
返回 profile.GetNetworkConnectivityLevel() == NetworkConnectivityLevel.InternetAccess;
网络服务.cs:
相关 MainPage.cs:
堆栈跟踪:
{System.NotImplementedException:方法或操作未实现。在 Windows.Networking.Connectivity.ConnectionProfile.GetNetworkConnectivityLevel() 在 App.Services.NetworkService.get_IsConnectionAvailable() 在 App.MainPage.LongListSelector_SelectionChanged(Object sender, SelectionChangedEventArgs e) 在 Microsoft.Phone.Controls.LongListSelector.set_SelectedItem(Object value) 在Microsoft.Phone.Controls.LongListSelector.OnItemTap(Object sender, GestureEventArgs e) 在 MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args) 在 MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)} System.Exception {System.NotImplementedException}
android - 无法通过 Jmdns 发现服务:Android
我必须提供对 API-14 及更高版本的支持,因此我无法使用 Android 提供的网络发现服务。
因此,我为此尝试了 Jmdns 库。
我有两个关于 Jmdns 实施的问题。 问题#1
我已经实现了以下代码,但我无法发现任何服务。当我出于相同目的并在同一网络上使用 NSD 时,我能够发现相应的服务。所以我不确定我的代码有什么问题。有人可以帮忙吗?
问题# 2 有没有办法通过 Jmdns 发现网络上所有正在运行的服务?
有人可以帮我解决以上两个问题吗?
谢谢和问候,阳光
security - 无法使用 NETWORK SERVICE 帐户运行 PSExec
我正在使用 TFS 启动 PSExec 以运行创建安装程序的 InstallShield 进程。我们的 TFS 构建代理在 NETWORK SERVICE 帐户下运行。
我使用 -u -p 选项运行 PSExec,并且能够运行该命令并成功地从命令提示符针对远程计算机构建安装程序。
但是在 TFS 中,我总是收到 2250 错误代码并且安装程序无法构建。
为了隔离问题,我将 psexec 命令更改为以下...
如果我从命令行运行上述内容,它会复制文件。如果我从 TFS 运行上述内容(在批处理文件中调用上述内容),则会失败并显示 2250。
因此,为了模拟 TFS 正在做什么,我...
- 使用提升的管理员权限启动命令提示符
- 发布
psexec -i -u "nt authority\network service" cmd.exe
- 运行包含上述 xcopy 命令的批处理文件
因此,第 2 步使用 NETWORK SERVICE 帐户启动命令提示符。当我从此命令提示符运行步骤 3 时,我收到了相同的 2250 错误。所以这是很好的 b/c 现在 TFS 已经不在了,我更接近真正的问题。
只是为了笑,我将 NETWORK SERVICE 添加到远程框的管理员组。那并没有解决问题。
所以这就是我所在的地方......
- 如果我使用管理员组中的登录名登录到 TFS 框,打开命令提示符,并使用 -u -p 参数运行 xcopy 命令批处理文件,一切正常。
- 如果我使用 NETWORK SERVICE 帐户启动 cmd 提示符并运行与步骤 1 中相同的批处理文件,我会收到 2250 拒绝访问。
所以在我看来,这个问题显然与 NETWORK SERVICE 帐户有关。问题是如何让 psexec 使用此帐户运行?
更新
以下对话框显示了管理员组中的 NETWORK_SERVICE 帐户,并且它具有对路径 (c:\temp) 的完全访问权限。
internet-explorer - 在 ASP.NET 页面中向内部用户询问凭据
我们的内部用户被要求输入他们的用户名和密码以查看主页。我们希望他们使用 SSO 而不会得到提示。
这是详细信息:
- Windows 身份验证已启用。其余被禁用(包括匿名身份验证)
- 使用集成的默认应用程序池和 .NET Framework 4.0。Apppool 使用NetworkService帐号
- 服务器和客户端在同一个AD域
- 使用Internet Explorer进行测试
- 在客户端进行更改不是一种选择(受信任的站点等)
注意:如果我授予用户对网站的 pysical 文件夹的读取权限,则不会要求他们输入凭据。但是,我试图弄清楚为什么我应该授予用户权限,因为IIS_IUSRS具有完全控制权