我有这个网页,我需要在Azure上安全。我想成为唯一能访问它的人。我不需要一个花哨的登录或错误页面过程。这个页面/网站以前是在我的家庭网络服务器上运行的,所以通过网络进行windows身份验证。配置身份验证标签"非常容易"实现。
我正在看Azure认证模型与STS, ACS, SAML,联邦…说实话,我对我该做什么有点困惑。另外,我想知道为什么微软不提供一个简单的控制面板界面来保护和维护对网站的访问,这样我们就不必创建服务和自定义网站代码来管理所有这些了。
在高层次上,我需要执行的最少步骤是什么?
如果你是唯一一个要使用这个网站的人,那么我不确定你是否需要经历所有这些麻烦。
但是,另一方面,做你想做的事情并不那么复杂:
- 获取ACS命名空间
- 在机器上安装WIF 在您的web项目中运行"Add STS Reference"并指向您的ACS命名空间(查找联邦元数据端点)
- 在ACS(或任何其他预先配置的idp)中配置LiveID信任
- 配置ACS为您的应用程序发出令牌
由于您的需求非常简单,因此默认规则可能适合您。
您可以使用表单身份验证,这应该是相当简单的实现。
在web.config中设置应用程序使用表单身份验证。
<authentication mode="Forms">
<forms name=".ASPXAUTH" loginUrl="/myadminlogin.aspx" protection="All" path="/" timeout="120" />
</authentication>
在web.config中定义受保护的文件夹。
<location path="secure">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
在您的登录区域检查条件并设置验证cookie:
'SET AUTH COOKIE
FormsAuthentication.SetAuthCookie(sessionID, False)
检查受保护页面上的会话:
If User.Identity.Name.ToString = "sessionID" then
'Permit access
End if