IIS服务中五种身份验证的灵活运用

时间:2022-03-06 23:24:04

微软IIS服务是一项经典的Web服务,可以为广大用户提供信息发布和资源共享功能。身份认证是保证IIS服务安全的基础机制,IIS支持以下5种 Web 身份认证方法:

一、匿名身份认证

如果启用了匿名访问,访问站点时,不要求提供经过身份认证的用户凭据。当需要让大家公开访问那些没有安全要求的信息时,使用此选项最合适。IIS 创建 IUSR_ComputerName 帐户(其中 ComputerName 是正在运行 IIS服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份认证。此帐户授予用户本地登录权限。用户可以将匿名用户访问重置为使用任何有效的 Windows 帐户。用户可以为不同的网站、虚拟目录、物理目录和文件建立不同的匿名帐户。如果基于 Windows Server 2003 的计算机是独立服务器,则 IUSR_ComputerName 帐户位于本地服务器上。如果该服务器是域控制器,则 IUSR_ComputerName 帐户是针对该域定义的。

二、基本身份认证

使用基本身份认证可限制对 NTFS 格式的 Web 服务器上文件的访问。使用基本身份认证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。要使用基本身份认证,请授予每个用户进行本地登录的权限,为了使管理更加容易,请将每个用户都添加到可以访问所需文件的组中。因为用户凭据是使用 Base64 编码技术编码的,但它们在通过网络传输时不经过加密,所以基本身份认证被认为是一种不安全的身份认证方式。

三、Windows 集成身份认证

Windows 集成身份认证比基本身份认证安全,而且在用户具有 Windows 域帐户的内部网环境中能很好地发挥作用。在集成 Windows 身份认证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果此尝试失败,就会提示该用户输入用户名和密码。如果用户使用集成 Windows 身份认证,则用户的密码将不传送到服务器。如果用户作为域用户登录到本地计算机,则此用户在访问该域中的网络计算机时不必再次进行身份认证。集成身份认证以前称为 NTLM 或 Windows NT 质询/响应身份认证,此方法以 Kerberos 票证的形式通过网络向用户发送身份认证信息,并提供较高的安全级别。Windows 集成身份认证使用 Kerberos 版本 5 和 NTLM 身份认证。注意:如果选择了多个身份认证选项,IIS服务 会首先尝试协商最安全的方法,然后它按可用身份认证协议的列表向下逐个试用其他协议,直到找到客户端和服务器都支持的某种共有的身份认证协议。

四、摘要式身份认证

摘要式身份认证需要用户 ID 和密码,可提供中等的安全级别,如果用户要允许从公共网络访问安全信息,则可以使用这种方法。这种方法与基本身份认证提供的功能相同。摘要式身份认证克服了基本身份认证的许多缺点。在使用摘要式身份认证时,密码不是以明文形式发送的。另外,用户可以通过代理服务器使用摘要式身份认证。摘要式身份认证使用一种质询/响应机制(集成 Windows 身份认证使用的机制),其中的密码是以加密形式发送的。

要使用摘要式身份认证,必须满足下述要求:

用户和 IIS 服务器必须是同一个域的成员或被同一个域信任。

用户必须有一个存储在域控制器上 Active Directory 中的有效 Windows 用户帐户。

该域必须使用 Microsoft Windows 2000 或更高版本的域控制器。

必须将 IISSuba.dll 文件安装到域控制器上。此文件会在 Windows 2000 或 Windows Server 2003 的安装过程中自动复制。

必须将所有用户帐户配置为选择“使用可逆的加密保存密码”帐户选项。要选择此帐户选项,必须重置或重新输入密码。

五、Microsoft .NET Passport 身份认证

.NET Passport 身份认证提供了单一登录安全性,为用户提供对 Internet 上各种服务的访问权限。如果选择此选项,对 IIS服务 的请求必须在查询字符串或 Cookie 中包含有效的 .NET Passport 凭据。如果 IIS服务 不检测 .NET Passport 凭据,请求就会被重定向到 .NET Passport 登录页。并且,如果选择此选项,所有其他身份认证方法都将不可用。

IIS服务中五种身份验证的灵活运用的更多相关文章

  1. IIS服务中五种身份验证

    转载:http://os.51cto.com/art/201005/202380.htm 作为微软最经典的Web服务之一的IIS服务有大致上五种Web身份认证方法.身份认证时保障IIS服务安全的根本, ...

  2. asp.net中常用的几种身份验证方式

    转载:http://www.cnblogs.com/dinglang/archive/2012/06/03/2532664.html   前言 在B/S系统开发中,经常需要使用"身份验证&q ...

  3. ASP.NET Web API Basic Identity 中的基本身份验证

    缺点 用户凭证在请求中发送. 凭据作为明文发送. 每个请求都会发送凭据. 无法注销,除非结束浏览器会话. 易于跨站点请求伪造(CSRF); 需要反CSRF措施. 优点 互联网标准. 受所有主要浏览器支 ...

  4. window10家庭版解决IIS中万维网服务的安全性中无Windows身份验证

    首先在左下角输入cmd搜索->命令提示符->以管理员身份运行->然后复制下面一段命令: dism /online /norestart /add-package:%SystemRoo ...

  5. ASP.NET 中通过Form身份验证 来模拟Windows 域服务身份验证的方法

    This step-by-step article demonstrates how an ASP.NET   application can use Forms authentication to ...

  6. ASP.NET中WebService的两种身份验证方法

    一.通过SOAP Header身份验证 此方法是通过设置SOAP Header信息来验证身份,主要通过以下几步: 1.在服务端实现一个SOAP Header类 public class Credent ...

  7. asp.net core中使用cookie身份验证

    配置 在 Startup.ConfigureServices 方法中,创建具有 AddAuthentication 和 AddCookie 方法的身份验证中间件服务: services.AddAuth ...

  8. C#中五种访问修饰符作用范围 public、private、protected、internal、protected internal

    1.五种访问修饰符包括哪些? public.private.protected.internal.protected internal 2.五种访问修饰符的作用范围? public  :公有访问.不受 ...

  9. Java中五种遍历HashMap的方式

    import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class Java8Templat ...

随机推荐

  1. 【JUC】JUC线程池框架综述

    一.前言 在分析完了JUC的锁和集合框架后,下面进入JUC线程池框架的分析,下面给出JUC线程池的总体框架,之后再逐一进行分析. 二.JUC线程池框架图 说明:从上图可知,JUC线程池框架中的其他接口 ...

  2. Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算

    目录(?)[-] proc文件系统 proccpuinfo文件 procstat文件 procpidstat文件 procpidtasktidstat文件 系统中有关进程cpu使用率的常用命令 ps ...

  3. Swift快速给Cocoa库内置类添加便捷初始化器

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) Cocoa中的NSShadow类默认没有我们需要的实例方法,为 ...

  4. iOS中 动态热修补技术JSPatch 韩俊强的博客

    .1.4) JSPatch bridge Objective-C and JavaScript. You can call any Objective-C class and method in Ja ...

  5. CSS div 高度满屏

    方法一: 通过JQuery,获取窗体的高度,设置给对应的div.代码如下 ht = $(document.body).height(); $(); 缺点:由于浏览器是先解析css,后执行JS,导致页面 ...

  6. pipenv使用总结

    一.pipenv默认虚拟环境路径在用户目录下的.\virtualenvs下,不同虚拟环境目录不同,如果要更改为在当前项目根目录下,可以在项目根目录下手动创建.venv目录. 1.linux环境下设置环 ...

  7. 1-find

    查找算法 #include <stdio.h> #include <assert.h> #define FALSE 0 #if 1 //array method int fin ...

  8. &lbrack;Unity插件&rsqb;Lua行为树&lpar;七&rpar;:行为树嵌套

    在上一篇的基础上,可以测试下行为树的嵌套,所谓的行为树嵌套,就是在一棵行为树下的某一个分支,接入另一棵行为树. 以下面这棵行为树为例: TestBehaviorTree2.lua TestBehavi ...

  9. 解决vscode换行光标跳转行首

    这个问题是由于设置自动保存而造成的. 解决方法1:取消自动保存. 解决方法2:在首选项的设置里加上"files.autoSaveDelay": 10000,延迟一小会自动保存的时间 ...

  10. CH5302 金字塔【区间DP】

    5302 金字塔 0x50「动态规划」例题 描述 虽然探索金字塔是极其老套的剧情,但是有一队探险家还是到了某金字塔脚下.经过多年的研究,科学家对这座金字塔的内部结构已经有所了解.首先,金字塔由若干房间 ...