以编程方式确定身份验证模式

2024-04-02

有没有办法以编程方式确定 SharePoint 2007 Web 应用程序是否正在使用表单身份验证?我想一种方法可能是从 web.config 中读取它,但我想知道 API 中是否公开了一些属性。


看看 /_admin/Authentication.aspx 在 Central Admin 中是如何实现的:

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);
    string g = base.Request.QueryString["WebAppId"];
    this.webApp = (SPWebApplication) SPConfigurationDatabase.Local.GetObject(new Guid(g));
    this.zone = (SPUrlZone) Enum.Parse(typeof(SPUrlZone), base.Request.QueryString["Zone"]);
    this.lb_Zone.Text = SPHttpUtility.HtmlEncode(SPAlternateUrl.GetZoneName(this.zone));
    SPIisSettings iisSettings = this.webApp.IisSettings[this.zone];

    // CODE ELIDED

        if (AuthenticationMode.Windows != iisSettings.AuthenticationMode)
        {
            if (AuthenticationMode.Forms != iisSettings.AuthenticationMode)
            {
                // CODE ELIDED
            }
            else
            {
                this.rdo_authForms.Checked = true;
            }

            // CODE ELIDED
       }
}

您感兴趣的部分是它使用 iisSettings.AuthenticationMode 来确定它是否是 Forms Auth。因此,诀窍是正确获取与您的 web 应用程序和区域相关的 SPIisSettings 引用。到达这一点是需要完成所有工作的地方。

您需要参数化此代码的部分内容,以便传入识别和获取对 webApp 和区域的引用的信息。

看看它在哪里分配了 his.rdo_authForms.Checked 吗?这就是你如何知道它是否使用表单身份验证。

此外,这意味着您需要知道您正在查看 Web 应用程序的哪个区域,以查看是否启用了表单身份验证

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式确定身份验证模式 的相关文章

随机推荐

  • Android 使用 Intent 获取 url

    我正在尝试获取单击以打开应用程序的 URL 我只是找不到从哪里可以获得这些信息 我有一个清单 单击时会打开应用程序 链接将是 我试图将其交给应用程序来处理
  • 如何在请求进行 Ajax 时显示加载 gif

    我试图在 ajax post 请求发送时显示加载 gif 图像 实际上我的代码是通过画布捕获图像 并且该图像呈现并转到 php 页面进行保存 该 php 文件保存并返回图像 现在我需要在请求发布时显示加载图像 并在 ajax 请求完成时隐藏
  • 正则表达式替换R中的所有上标

    尽管有很多关于 R 中的正则表达式的示例和问题 但它们似乎都不适合我的问题 在我的项目中 我正在努力处理像 4x1 1x1 这样的字符串 上标字符对我来说似乎很有问题 我的目标 从4x1 1x1 我想要得到4x1 1x1 只需将所有上标替换
  • 设置了正确的内容类型,但 .ipa 文件被视为 .zip 文件

    我编写了一个小型 Rails 应用程序 我可以在其中上传三个文件 我需要这些文件来无线分发临时构建 这包括一个 ipa文件 一个 mobileprovisioning文件和一个 plist File 现在的问题是 当我点击链接时 ipa归档
  • 是否可以在 Netbeans 7.0 应用程序中使用 Jzy3D?

    好吧 我们正在尝试将 3D 散点图合并到 Netbeans 7 0 中的项目中 我们选择测试的库之一是 Jzy3D 看起来它会做我们需要它做的一切 但不幸的是 它什么也没做 我已经正确安装了 JOGL 并对其进行了测试 发现它可以正常工作
  • 阻止 FlowType 检查 node_modules 中的错误

    我曾尝试寻找解决方案或解决此问题的方法 但没有成功 以下是描述我的流程安装以及最终我面临的问题的一些步骤 Step 1 我使用创建了一个新的反应本机项目react native init TestProject 我想配置flow http
  • 在 dotnet 新模板中包含“隐藏”文件

    我正在尝试创建一个简单的dotnet new包含我的团队使用的 默认 editorconfig 和 gitconfig 的模板 不幸的是 files 不会被包含在dotnet pack 这是我的 csproj 的一部分
  • SonataAdminBundle表单字段查询

    在 Admin 类的 SonataAdminBundle 中 我无法创建ManyToMany 字段上的 orderBy https github com sonata project SonataAdminBundle issues 328
  • 在 C++ 的 if 语句中使用多个条件

    我正在尝试在 C 中创建一个复杂的 if 语句 这将使我免于编写一大堆 if 语句 我想知道下面的代码是否确实有意义 或者我忽略了一个错误 if input choice cout lt lt Tie lt lt endl else if
  • Flyway Gradle 插件 - 循环依赖

    我有一个使用 gradle flyway gradle 插件 mybatis 生成器和 postgres 的项目 在我的 build gradle 中 我有 compileJava dependsOn myBatisGenerator 我想
  • LinkedIn 集成 r_network 和 w_messages 请求在 iOS sdk 中无法协同工作

    我已经完成了 LinkedIn 集成 并且必须向特定用户发送消息 为此 我首先要获取连接 然后发送消息 void requestTokenFromProvider OAMutableURLRequest request OAMutableU
  • 具有不重叠条目集的两列值的共同出现表

    import pandas as pd 可重复的设置 我有一个数据框 df pd DataFrame from dict A a b b c d d c b B p q p q r r p q ie A B 0 a p 1 b q 2 b
  • 如何编写 T4 模板以从 Entity Framework 6 创建 DTO?

    我有一个大型数据库 我在 Entityframework 中使用数据库优先模型 它位于互联网服务器上并通过 WCF 进行通信 域模型使用所有小写字母来表示实体 存储过程和列 属性的名称 在我的客户端应用程序中 我希望使用标准 PascalC
  • JS 可变变量可以从闭包访问[重复]

    这个问题在这里已经有答案了 所以我的 JS 编译器中有一个警告 但是你能向我解释一下这是否真的会影响我的代码的执行方式吗 for x 0 x lt levels length x var level levels x var candles
  • 通过php代码在xls表中插入图片

    问候 我必须在行 0 列 0 上插入徽标 图像 我为此使用 Spreadsheet Excel Writer 我尝试了它的 insertBitmap 方法 程序工作正常 但不显示位图图像在 xls 工作表上 而不是空白行 可能是什么原因 您
  • 分发预先经过 NGEN 处理的程序集是否有意义?

    我发现了一些关于使用 NGEN 作为安装程序的最后一步的有趣链接这个帖子 https stackoverflow com questions 522323 how do i run ngen at the end of the instal
  • 使用一个套接字创建 2 个流

    我正在尝试创建一个在互联网上运行的多人游戏 问题是我正在尝试获取流上的输入 但由于某种原因我无法使用一个套接字创建 2 个流 我将解释一下 Socket s new Socket 127 0 0 1 5001 ObjectInputStre
  • 如何将 csv 文件导入 MySQL Workbench?

    我有一个 CSV 文件 它包含 140 万行数据 因此我无法在 Excel 中打开该 csv 文件 因为它的限制约为 100 万行 因此 我想在MySQL Workbench中导入这个文件 此 csv 文件包含类似以下的列 Service
  • 如何找到图像中最密集的区域?

    考虑一个黑白图像 例如this http img13 imageshack us img13 7401 10416827 jpg 我想做的是找到白点最密集的区域 在这种情况下 有 20 21 个这样的密集区域 即 点簇构成一个密集区域 谁能
  • 以编程方式确定身份验证模式

    有没有办法以编程方式确定 SharePoint 2007 Web 应用程序是否正在使用表单身份验证 我想一种方法可能是从 web config 中读取它 但我想知道 API 中是否公开了一些属性 看看 admin Authenticatio