iisexpress权限

翻译 2015年11月20日 23:02:47
1(1)以管理员身份打开CMD命令窗口
(2)输入如下命令:
添加:netsh http add urlacl url=http://192.168.1.1:8080/ user=everyone 
显示:netsh http show urlacl url=http://192.168.1.101:65535/
删除:netsh http delete urlacl url=http://192.168.1.101:65535/
同样,将IP地址和端口改为你自己的。如果报错请确认是否是以管理员身份运行的CMD。重启IISExpress,此时应该就可以使用IP地址访问了

3..完成上面两部之后,由于防火墙的原因,其他的电脑可能还无法访问你的服务器,如果出现这种情况,采用下面的方法(这里系统是win8.1)
(1)控制面板(查看方式选择类别)->系统和安全->Windows防火墙,在左侧选择高级设置
(2)右击入站规则->新建规则->端口->特定本地端口处输入8080->允许连接->3个选项全选->输入新规则名称->完成
现在外部程序就可以访问你的IISExpress了



详细说明:

解决方法给针对部署方式说明

如果是Windows程序, 一般 右键单击, 选择“以管理员方式启动” 既可以,包括VS调试的时候

如果是在IIS下,一般 是没有问题, WPA(Windows进程激活服务)/IIS7

一般是没有问题的,IIS本身就已经具有权限了

如果是Windows 服务(本文重点),可能需要配置一下了

作为一个WCF服务来讲,如果用一般程序来HOST,作为最终产品,始终有点不好,(当然,这个是以服务端是服务器的前提下说的, 如果是那种P2P一类的程序就不是这个问题!)

在部署服务的时候,一般会选择一个系统帐号,来运行服务

默认情况下, 如果使用的是本地系统账户(Local system) 应该是没有问题的,

其他的2个账户,可能就会遇到错误, 分别是 本地服务账户(Local Service Account) 和 网络服务账户(Network Service Account)

当然,你可以自己指定一个账户,这里顺便说一下, 上边的3个账户是没有密码的

 

下面说一下解决办法

1、用管理模式打开命令行

命令1 

 

netsh http add urlacl url=http://地址可以用+表示通用:端口/  sddl="D:(A;;GX;;;LS) user =domain\user

 

解释一下

netsh 是HTTP的配置工具 Vista 以上 自带, 之前的版本是HTTPCfg,在额外的工具包里

HTTP 是配置 HTTP相关的

add 是添加,也有其他操作 比如 删除 Delete  和 显示 Show

urlacl  就是最主要的了, URL ACL(URL 访问控制列表)

URL=  就是你要用到的地址,可以是域名 比如  abc.com 之类的,也可以用 + 表示通用, (也包含端口哦)

SDDL 是 安全描述定义语言(Security Descriptor Definition Language),一个很晦涩的东西,我也没有太懂。具体的可以参考后文链接。

这里解释一下上面写的。

D:(A;;GX;;;LS)

D: DACL 标记

A 表示 允许访问

GX 一般执行 权限

LS 本地服务账户(Local service account)

另外还有

SY 本地系统账户( Local system)

NS 网络服务账户(Network service account)

如果不用这个预知的账户,你可能需要输入 对应账户的SID 才可以

User 表示 对应的用户, 和上边的最后一点差不多, 不过应该是用在自定义启动账户上了。

 

例如, 允许 本地服务 注册 所有地址 的8080端口 的命令是

 

netsh http add urlacl url=http://+:8080/ sddl="D:(A;;GX;;;LS)"

 

这个成功的话,你应该可以启动服务。

接下来

命令2

 

netsh http add iplisten ipaddress=IP地址+端口

 

解释,前半服务和前边的相同。只说不同的部分

ipListen  是IP侦听列表

ipaddress 是要侦听的IP地址+端口 (可以是IPV6地址)

 

例如: 监听所有地址的8080端口

 

netsh http add iplisten ipaddress=0.0.0.0:8080

 

接下来,添加防火墙规则, 如果你用的是Win2008以上的服务器,你需要配置一下系统防火墙,当然,你可以关掉。

命令3

 

netsh advfirewall firewall add rule name=名字 dir=in action=allow protocol=协议 localport=端口

 

解释:

advfirewall  是高级防火墙功能

firewall  就是防火墙

add  和前边的相同

Rule  是规则

Name 是规则的名字

Dir  是 数据方向,in 表示进入 out  表示 发出

action 是动作  有 allow 允许 和 block 阻止

protocol 是协议 可以是 0-255|icmpv4|icmpv6|icmpv4:type,code|icmpv6:type,code|tcp|udp|any (default=any) 一般是TCP

localport 就是本地使用的宽口号

 

例如,允许 HTTP 8080 端口 的外来访问, 规则的名字是 "DDNS Client Host Service"

 

netsh advfirewall firewall add rule name="DDNS Client Host Service" dir=in action=allow protocol=TCP localport=8080

 

 

这些完成后,基本程序就能跑了。外边的机器也应该能访问了

如果要删除的话,可以把 Add 换成 Delete  ,虽然有些小问题


IIS7权限简述

IIS7对于以往是革命性的改变, 不再是以前缝缝补补的破衣裳, 全部重写的代码带来了更为优秀的性能与扩展能力. 他不再是一个Web Server了而变成了一个Application Server能够承...
  • xys_777
  • xys_777
  • 2011年07月13日 13:50
  • 3298

visual studio设置为使用IIS运行网站时加载项目遇到权限问题的解决方法

visual studio(vs) 开发网站项目时,默认是使用vs内置的一个简易型的IIS服务程序来运行网站项目。但有些时候这并不是很方便,例如我需要在移动端访问我的测试网站,不能直接访问带端口号的地...
  • idoiknow
  • idoiknow
  • 2015年06月18日 13:21
  • 4874

VS2013 IIS Express没有权限访问元数据库的一种解决方法

最近项目里VS2013碰到了IIS Express没有权限,不能访问元数据库的问题,纠结的不行,搞了几个小时,在临重装系统前,找到一种适合当前情况的解决方法,当然我也列出来网上的一些大神的建议。 1...
  • huangwei858
  • huangwei858
  • 2016年06月29日 15:16
  • 1735

Web项目身份验证设置为Windows时如何将项目部署到IIS进行调试

因为项目有多个解决方案组成,彼此之间存在主子站点问题,如果想要同时调试多个项目,就不能简单的用VS的IISExpress进行调试,需要将项目配置成IIS本地(这里是IIS)进行调试,配置过程一切顺利,...
  • starfd
  • starfd
  • 2015年05月27日 21:14
  • 5836

IIS身份验证与许可授权工作方式

验证方式对比表:    验证方式 安全性 ...
  • flashlm
  • flashlm
  • 2007年09月01日 13:40
  • 843

IIS Express 虚拟目录

1、打开C:\Users\\Documents\IISExpress\config\applicationhost.config 2、编辑site节如下
  • Codec007
  • Codec007
  • 2015年04月09日 12:03
  • 1790

如何允许IISExpress开放外部访问(git版本管理下)

如何允许IISExpress开放外部访问(git版本管理下) 操作步骤 1.IISEXPRESS不能外部访问的现象 2.找到IISEXPRESS 的配置文件 3. 设置 IIS...
  • egman
  • egman
  • 2016年07月22日 11:14
  • 1811

IIS身份验证的配置

前4者配置:localhost applicationHost.config 后2者配置:web.config 要点: 这6项虽然列在一起,但在应用上却不是一个级别的; 前4者属于IIS验证,其...
  • after_
  • after_
  • 2014年09月28日 15:31
  • 1736

IIS7 配置身份验证

身份验证有助于确认请求访问站点或应用程序的客户端的标识。默认情况下,IIS 7 支持匿名身份验证和集成 Windows 身份验证。 IIS 7 支持基于质询和基于登录重定向的身份验证方法。基于质...
  • Mang_liu
  • Mang_liu
  • 2012年07月02日 16:10
  • 15753

vs2015调试iisexpress无法启动的问题解决方案整理

我上传的项目代码被同事下载之后使用iisexpress调试一直报错,iisexpress无法启动只能用自己本地的iis,我本地的代码却没问题,试了两种解决办法,问题解决了,在此记录一下也总结一下 方...
  • yangdongbin27
  • yangdongbin27
  • 2017年12月05日 12:04
  • 129
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iisexpress权限
举报原因:
原因补充:

(最多只允许输入30个字)