【问题标题】:ASP.Net Authenticate users from another trusted forestASP.Net 对来自另一个受信任林的用户进行身份验证
【发布时间】:2010-10-12 20:14:19
【问题描述】:

我想在我的 Asp.Net 应用程序中对来自另一个(受信任的)林的用户进行身份验证。 到目前为止,我的 web.config 中有这个:

<?xml version="1.0"?>
<configuration>
  <appSettings/>
  <connectionStrings/>
  <system.web>
    <compilation debug="true" />
    <authentication mode="Windows" />
    <authorization>
      <deny users="?"/>
    </authorization>
  </system.web>
</configuration>

我的应用程序在域 A 中的服务器上运行,位于林 A 中。 我想将对我的应用程序的访问限制在域 A 中的一个组中。 该组将是一个“域本地组”。 该组将包含林 B 中域 B 的用户。 林 B 受到林 A 的信任。

说了这么多,如果有更好的方法,请告诉我。

提前致谢

-更新-

我刚刚对用户进行了测试,User.Identity.Name 似乎是正确的。此外,当检查另一个林中的用户是否在我林的域本地组中时,User.IsInRole 似乎给了我预期的结果。仍然需要一些运气才能让“允许”和“拒绝”的东西在 web.config 中工作。

【问题讨论】:

  • 我已经用上面的 web.config 进行了尝试,它允许用户进入,并且 User.Identity.Name 是他们的登录名。但是当我将授权部分更改为拒绝除特定组之外的所有内容时,它不起作用。

标签: c# asp.net active-directory cross-domain


【解决方案1】:

好的,只是为我工作,这样做:

<?xml version="1.0"?>
<configuration>
  <system.web>
    <authentication mode="Windows"/>
    <authorization>
      <allow roles="MYDOMAIN\MyDomainLocalGroup"/>

      <deny users="*"/>
      <deny users="?"/>
     </authorization>
  </system.web>
</configuration>

有趣的是,这是进行 asp.net 身份验证的普通方法,将用户限制为仅限特定组中的用户。我不确定为什么它第一次不起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多