加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – web.config在文件夹允许全部或没有用户身份验证

发布时间:2020-12-15 22:39:39 所属栏目:asp.Net 来源:网络整理
导读:我有一个文件夹与几个调查aspx页面.我必须在这些aspx页面上设置权限.有5个不同的页面,只有一个允许某些用户访问.我添加了一个web.config文件来允许和拒绝用户,但它不工作.如果我允许我的用户名,并添加一个deny =“?”我没有访问权限,但是如果我添加另一个用
我有一个文件夹与几个调查aspx页面.我必须在这些aspx页面上设置权限.有5个不同的页面,只有一个允许某些用户访问.我添加了一个web.config文件来允许和拒绝用户,但它不工作.如果我允许我的用户名,并添加一个deny =“?”我没有访问权限,但是如果我添加另一个用户,请拿出我的权限,并取消拒绝选项,我有权限登录系统.如果我拒绝,我可以访问,但是所有用户都可以访问该页面.

添加我的用户凭据并拒绝所有匿名用户我无法访问.有人可以指出我正在做错什么的正确方向吗?
是不是不读取或拿我的Windows登录凭据?我正在使用visual studio 2012,实体框架.

这就是我所做的:

//Web Config that allows and denies:
   <?xml version="1.0"?>
        <configuration>
        <system.web>
    <authorization>
      <allow users="*" />
    </authorization>
     </system.web>

    <location path="QualityCheckSurvey.aspx">
    <system.web>
      <authorization>
        <allow users="DomainNameUser2" />
        <deny users="?" /> 
      </authorization>
    </system.web>
    </location>
    </configuration>

我已将我的身份验证模式设置为Windows.

编辑
似乎权限设置不正确.但它仍然不起作用.当我拒绝*,但是允许USER1,即使提示登录请求,用户也不会访问.登录窗口对话框只是继续弹出3次,即使使用了访问.使它否认(匿名)允许每个人都可以访问,即使我取消了拒绝,只有与USER1的允许标签,其余的用户仍然有访问…我现在在本地运行,但即使在IIS上设置(Windows和基本身份验证)的身份验证完全一样….

编辑
这是我正在使用的实际代码.此路径中只允许3个用户.这个web.config文件位于调查文件夹内,共有5种不同类型的调查.只有这一个调查应该允许某些用户,其余的调查任何人都可以访问….

<?xml version="1.0"?>
<configuration>
  <system.web>
    <authorization>
      <allow users="*"/>
    </authorization>
  </system.web>

  <location path="QualityCheckSurvey.aspx">
    <system.web>

      <authorization>
        <deny users="?" />
        <allow users="OEPkevinh,OEPshabierg,OEPheilened" />
        <deny users="*" />
      </authorization>

    </system.web>
  </location>

在我的主要web.cofin在应用程序的根目录中,我已经将认证模式设置为Windows:

<authentication mode="Windows">

<!--<forms loginUrl="~/Account/Login.aspx" timeout="2880" />-->
    </authentication>

解决方法

在你的问题上,你说你有一个文件夹名称,但是在web.config中,你只给出了路径上的文件名.使用foldername / filename.aspx,如下所示.使用deny users =“*”代替deny users =“?”
<location path="foldername/QualityCheckSurvey.aspx">
    <system.web>
        <authorization>
            <allow users="DomainNameUser2"/>
            <deny users="*"/>
        </authorization>
    </system.web>
</location>

编辑

这看起来像在同一应用程序中有多个web.config文件.为了避免混淆,只需删除一个在调查文件夹和根文件夹web.config中添加此代码.

<?xml version="1.0"?>
<configuration>
  <system.web>
    <authorization>
      <authentication mode="Windows" />
    </authorization>
  </system.web>

  <location path="survey/QualityCheckSurvey.aspx">
    <system.web>
      <authorization>
        <allow users="OEPkevinh,OEPheilened" />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>

我假设调查文件夹在根文件夹内.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读