adfs - 使用 ADFS 和 WAP 时未经身份验证的应用程序区域
问题描述
我的网站的某些部分需要身份验证,而其他部分则不需要,例如注册页面、关于、联系我们等。
对于经过身份验证的区域,我们与 ADFS 集成。我们正在引入 WAP,并正在考虑以下事项。
我们可以使用 preauthenticaiton 并将所有需要身份验证的功能放在一个应用程序中,然后仅为那些不需要身份验证的部分创建第二个应用程序。
这是一种常见/首选的方法吗?
解决方案
这真的取决于你的喜好。如果您愿意,您可以创建单独的应用程序并将访问要求添加到一个而不是另一个,或者您可以添加逻辑以根据身份验证或用户角色授予用户有条件的访问权限。仅使用 IsAuthenticated 属性来授予对特定页面的访问权限会更容易。您可以使用 Request.IsAuthenticated 或 User.Identity.IsAuthenticated,具体取决于您想走多远。
@if (User.Identity.IsAuthenticated){
using (Html.BeginForm("My Page", "About", FormMethod.Post)){
<div> Page Data </div>
}
}
else{
<div> Show nothing. </div>
}
或者更简单地说,您可以执行以下操作:
@if (Request.IsAuthenticated){
<h1> Here's your data!</h1>
}
else{
<h1>Here's your blank web page! </h1>
}
推荐阅读
- c# - WPF + Caliburn Micro + MVVM:TabItem 处理
- javascript - 更改父元素值属性
- loops - 如何一次运行多个 iMacros 脚本并使用相同的数据源 CSV 循环
- xml - 在 oracle ISO 数据库中编码文件 XML UTF 8(重音问题)
- javascript - Anime.js:简单的文本动画不会显示(带有网格布局)
- angular - Angular 材质自动完成,初始化过滤选项以查看所有焦点选项
- mysql - 在mysql中按键查找json
- javascript - 键入时的密码验证不适用于 Vanilla JavaScript 中的特殊字符
- angularjs - 加载资源失败:服务器响应状态为 405(不允许方法)
- arangodb - 用于验证节点路径的 AQL