Client tried to access password protected page without proper authorization (status code 401) 无法发布SceneService的解决方法
前不久,一客户反映原来已经部署好的WebGIS系统忽然无法正常运行了,具体配置如下:
Portal for ArcGIS 10.5
ArcGIS Server 10.5
Web Adpator 10.5
Data Store 10.5
表现出现的症状就是托管的要素服务可以正常发布,但是三维服务SceneService发布不成功。查看ArcGIS Server的日志,提示如下错误信息:

Client tried to acces password protected page without proper authorization (status code 401) 这个错误其实是ArcGIS Server底层的ArcObject类库中预定义的错误消息 MESSAGESUPPORT_E_UNAUTHORIZED,可以参考以下链接:
https://desktop.arcgis.com/en/arcobjects/latest/net/webframe.htm#messageSupportError.htm
初步判断这个错误有可能是DataStore无法认证登录的问题,但通过了Server的REST管理页面验证了一下DataStore,发现状态是正常的。
Server用于验证DataStore的REST URL路径类似如下:
https://www.seanpc.com/ags/admin/data/items/nosqlDatabases/AGSDataStore_nosqldb_tcs_m3p2m8vg/machines/LUWLESRIPC.MSHOME.NET/validate
返回的结果类似如下:

再次推测问题可能和操作系统的文件系统权限有关,询问了一下客户,原来客户在系统出问题之前做了一个重置ArcGIS Server运行账户密码的操作。客户是直接通过Windows的管理页面做账户密码重置操作的。

于是重新设置了ArcGIS Server安装目录以及系统数据目录的权限。


使用C:\Program Files\ArcGIS\Server\bin\ServerConfigurationUtilityUI.exe工具重新设置ArcGIS Server账号信息和目录权限。
重置后,重启ArcGIS Server,再次发布三维服务SceneService,系统恢复正常了。建议客户如果在知道原账户密码的前提下需要重置密码,必须通过Windows的控制面板账户管理来重置密码。假如是通过Windows的管理页面做账户密码重置操作的,需要重新设置相关的ArcGIS Server文件目录账户权限。因为按照微软的说法:
If an administrator resets your password, you might lose access to some of your files.
Client tried to access password protected page without proper authorization (status code 401) 无法发布SceneService的解决方法的更多相关文章
- 执行PHP脚本时遇到 mysql_connect(): Headers and client library minor version mismatch的解决方法
把服务器从Windows迁移到了centos7.2,配置好PHP运行环境后,项目运行正常. 但在命令行中运行一个PHP脚本时,遇到了标题中显示的错误 使用 php -i | grep Client 得 ...
- 实操:Could not autowire No beans of 'FastDFS Client' type found 的解决方法
前言: 今天接手了同事之前做的一个小项目,里面涉及到了 FastDFS 的使用.但是当我在本地运行项目的时候,却报了 Could not autowire No beans of 'FastDFS C ...
- [转]Blue Prism Opening a password protected Excel workbook?
本文转自:https://www.rpaforum.net/threads/opening-a-password-protected-excel-workbook.470/ 问: As the tit ...
- redis集群报Jedis does not support password protected Redis Cluster configurations异常解决办法
解决spring-data-redis操作redis集群报“Jedis does not support password protected Redis Cluster configurations ...
- MySQL------报错Access denied for user 'root'@'localhost' (using password:NO)解决方法
报错:Access denied for user 'root'@'localhost' (using password:NO) 原因:没有给用户“root'@'localhost”赋予数据库权限 解 ...
- Access denied for user 'root'@'localhost' (using password:YES)解决方法
Access denied for user 'root'@'localhost' (using password:YES)解决方法 在MySQL的使用过程中,我们可能会碰到“Access denie ...
- mysql Access denied for user root@localhost错误解决方法总结(转)
mysql Access denied for user root@localhost错误解决方法总结(转) mysql Access denied for user \'root\'@\'local ...
- mysql Access denied for user root@localhost错误解决方法总结
原文:http://www.111cn.net/database/mysql/44142.htm Access denied for user 'root'@'localhost' (using pa ...
- MySQL Access denied for user root@localhost 解决方法
今天把本地开发的项目(ThinkPHP 3.2.3)移到虚拟机上(CentOS 6.6,LNMP 1.2,MySQL 5.6.23),配置好 MySQL 之后访问首页,出现: 此时 MySQL 的用户 ...
随机推荐
- 用 Hystrix 构建高可用服务架构
1 hystrix是什么 在分布式系统中,每个服务都可能会调用很多其他服务,被调用的那些服务就是依赖服务,有的时候某些依赖服务出现故障也是很正常的. Hystrix 可以让我们在分布式系统中对服务间的 ...
- P1525 关押罪犯 题解
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; //带边权 ...
- Android中自定义组合控件
Android中自定义控件的情况非常多,一般自定义控件可以分为两种:继承控件及组合控件.前者是通过继承View或其子类,重写方法实现自定义的显示及事件处理方式:后者是通过组合已有的控件,来实现结构的简 ...
- 【Guava】基于guava的重试组件Guava-Retryer
一.使用场景 在日常开发中,我们经常会遇到需要调用外部服务和接口的场景.外部服务对于调用者来说一般都是不可靠的,尤其是在网络环境比较差的情况下,网络抖动很容易导致请求超时等异常情况,这时候就需要使用失 ...
- Chapter 7. Packages
Chapter 7. Packages The hierarchical naming structure for packages is intended to be convenient for ...
- Linux 进程以及多线程的支持
1.最初内核并没有实现对多线程的支持,2.6之后开始以轻量级进程的方式对多线程进行支持(轻量级线程组). a.在2.6 之前,如果需要实现多线程,只能在用户态下实现,用户程序自己控制线程的切换, 实际 ...
- scrapyd远程连接配置
安装scrapyd: pip install scrapyd 默认scrapyd启动是通过scrapyd就可以直接启动,bind绑定的ip地址是127.0.0.1端口是:6800,这里为了其他主机可以 ...
- java代理-cglib
前面说到了java的动态代理,但是动态代理依赖于接口,这次来看看cglib来实现的代理... 假设有如下方法,这回没有说接口哦~ package proxy.cglibProxy; public cl ...
- 事务控制语句,begin,rollback,savepoint,隐式提交的SQL语句
事务控制语句 在MySQL命令行的默认设置下,事务都是自动提交的,即执行SQL语句后就会马上执行COMMIT操作.因此开始一个事务,必须使用BEGIN.START TRANSACTION,或者执行SE ...
- Rest客户端
public class RestClient { public string EndPoint { get; set; } //请求的url地址 public HttpVerb Method { g ...