gpt4 book ai didi

authentication - 向静态 Azure 网站添加身份验证

转载 作者:行者123 更新时间:2023-12-03 05:04:06 25 4
gpt4 key购买 nike

我们有一个 Azure 网站,托管一个静态网站(仅一些 HTML、CSS、Javascript),然后通过 AJAX 调用与我们的 Azure 移动服务进行通信。

我们想为此网站添加一些非常简单的身份验证(只需静态用户名/密码就足够了)。

请推荐最简单的方法。

或者除了 Azure 网站之外,是否还有更好的选项来提供静态内容?

最佳答案

通过利用与 IIS 集成的 ASP.NET 身份验证和授权,可以实现使用静态用户名和密码的非常简单的身份验证形式:Apply ASP.NET Authentication and Authorization Rules to Static Content with IIS 7.0's Integrated Pipeline Feature .

Se this sample GitHub project举个例子。相关的代码片段是这个 Web.config 文件,您应该将其放置在根目录中(该目录是公共(public)的):

<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="false" />
<authentication mode="Forms">
<forms>
<credentials passwordFormat="Clear">
<user name="Alice" password="secret" />
</credentials>
</forms>
</authentication>
<!-- Unless specified in a sub-folder's Web.config file,
any user can access any resource in the site -->
<authorization>
<allow users="*" />
</authorization>
</system.web>
<system.webServer>
<modules>
<remove name="FormsAuthenticationModule" />
<add name="FormsAuthenticationModule" type="System.Web.Security.FormsAuthenticationModule" />
<remove name="UrlAuthorization" />
<add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />
</modules>
</system.webServer>
</configuration>

您可以将这个 Web.config 文件放置在子目录中(该文件将受到限制):

<?xml version="1.0"?>
<configuration>
<system.web>
<!-- Anonymous users are denied access to this folder (and its subfolders) -->
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>

您还需要一个 Login.aspx包含 HTML 表单和服务器端身份验证逻辑的文件。有关示例,请参阅示例项目中的 Login.aspx。

这样您就可以在根目录下托管公共(public)文件,在子目录下托管私有(private)文件。如果你想保护根级别,只需相应调整授权规则即可。

有关配置选项的文档,请参阅以下 MSDN 页面:

关于authentication - 向静态 Azure 网站添加身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17619349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com