本文转自:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008/cc281310%28v%3dsql.100%29

通过随服务器一起安装的 Windows 身份验证扩展插件或您部署的自定义身份验证扩展插件,Reporting Services 可处理 HTTP 请求的所有身份验证功能。Windows 身份验证扩展插件支持不同类型的身份验证,因此您可以精确地控制报表服务器将接受哪些 HTTP 请求。身份验证类型包括 RSWindowsNegotiate、RSWindowsKerberos、RSWindowsNTLM 和RSWindowsBasic。每种身份验证类型都可以单独打开或关闭。如果您希望报表服务器接受多种类型的请求,则可启用多种身份验证类型。

注意

在 Reporting Services 的早期版本中,所有身份验证支持都是由 IIS 提供的。在此版本中,将不再使用 IIS。Reporting Services 会在内部处理所有身份验证请求。

身份验证类型

下表介绍了 Reporting Services 支持的身份验证类型。

 

AuthenticationType 名称

HTTP 身份验证层值

默认情况下是否使用

说明

RSWindowsNegotiate

Negotiate

RSWindowsNegotiate 指示报表服务器处理指定 Negotiate 的身份验证请求。Negotiate 会先尝试 Kerberos 身份验证,但是如果 Active Directory 无法将客户端请求的票证授予报表服务器,则回退到 NTLM。仅当票证不可用时,Negotiate 才会回退到 NTLM。如果第一次尝试导致出错而不是缺少票证,则报表服务器不会进行再次尝试。

RSWindowsNTLM

NTLM

NTLM 可通过按照质询响应中的说明交换私有数据对用户进行身份验证。

将不会在其他请求中对凭据进行委托或模拟。后续请求将遵循新的质询响应顺序。根据网络安全设置的不同,系统可能提醒用户输入凭据,或者会以透明方式处理身份验证请求。

RSWindowsKerberos

Kerberos

对于指定 Kerberos 身份验证的请求,报表服务器将读取发出请求的用户的安全令牌权限。如果某个域启用了委托,则还可在为报表提供数据的外部数据源的其他连接中使用请求报表的用户的令牌。

在指定 RSWindowsKerberos 之前,请确保您所使用的浏览器类型确实支持该值。如果您使用的是 Internet Explorer,则 Kerberos 身份验证只能通过 Negotiate 进行支持。Internet Explorer 将不表述直接指定 Kerberos 的身份验证请求。

RSWindowsBasic

Basic

基本身份验证是在 HTTP 协议中定义的,并只能用于对向报表服务器发出的 HTTP 请求进行身份验证。

凭据以 base64 编码形式在 HTTP 请求中传递。如果您使用基本身份验证,则在通过网络发送用户帐户信息之前,请使用安全套接字层 (SSL) 对其进行加密。SSL 提供一个加密通道,可借助此通道通过 HTTP TCP/IP 连接将连接请求从客户端发送到报表服务器。有关详细信息,请参阅 Microsoft TechNet 网站中的 Using SSL to Encrypt Confidential Data(使用 SSL 加密机密数据)。

Custom

(Anonymous)

匿名身份验证将指示报表服务器忽略 HTTP 请求中的身份验证标头。报表服务器接受所有请求,但不接受您所提供用来对用户进行身份验证的自定义 ASP.NET 窗体身份验证的调用请求。

仅当要在报表服务器上部署处理所有身份验证请求的自定义身份验证模块时,才指定 Custom。不能将 Custom 身份验证类型与默认的 Windows 身份验证扩展插件一起使用。

不支持的身份验证方法

不支持下列身份验证方法和请求。

 

身份验证方法

说明

匿名

报表服务器将不接受来自匿名用户的未经身份验证的请求,但包含自定义身份验证扩展插件的那些部署除外。

如果对配置为使用基本身份验证的报表服务器启用报表生成器访问,则报表生成器将接受未经身份验证的请求。

对于所有其他情况,在匿名请求到达 ASP.NET 前将拒绝该请求,同时生成 HTTP 状态 401 拒绝访问错误。客户端收到 401 拒绝访问错误后必须使用有效的身份验证类型重新表述该请求。

单一登录技术 (SSO)

在 Reporting Services 中不提供对单一登录技术的本机支持。如果希望使用单一登录技术,则必须创建自定义身份验证扩展插件。

报表服务器宿主环境不支持 ISAPI 筛选器。如果您使用的 SSO 技术以 ISAPI 筛选器形式实现,请考虑使用 RSASecueID 或 RADIUS 协议的 ISA Server 内置支持。另外,还可以创建 ISA Server ISAPI 或 RS 的 HTTPModule,但是建议您直接使用 ISA Server。

Passport

SQL Server 2008 不支持。

摘要式

SQL Server 2008 不支持。

如何配置身份验证设置

保留报表服务器 URL 后,身份验证设置将配置为使用默认的安全设置。如果错误地修改了这些设置,则报表服务器将返回 HTTP 401 拒绝访问错误,该错误针对无法通过身份验证的 HTTP 请求。选择身份验证类型要求您已了解在网络中是如何支持 Windows 身份验证。必须指定至少一种身份验证类型。可为 RSWindows 指定多种身份验证类型。RSWindows 身份验证类型(即,RSWindowsBasic、RSWindowsNTLM、RSWindowsKerberos 和 RSWindowsNegotiate)与 Custom 互斥。

重要提示

Reporting Services 不验证您指定的设置以确定它们对于您的计算环境来说是否正确。有可能默认安全设置将对您的安装无效,也有可能将指定对安全基础结构无效的配置设置。因此,使报表服务器部署在较大的单位中可用之前,先在受控的测试环境中仔细测试该报表服务器部署非常重要。

报表服务器 Web 服务和报表管理器始终使用相同的身份验证类型。不能为报表服务器服务的各功能区配置不同的身份验证类型。如果您具有扩展部署,请确保在部署的所有节点上重复所有更改。不能将同一扩展中的不同节点配置为使用不同的身份验证类型。

后台处理不接受来自最终用户的请求,但是会对所有请求进行身份验证以发现无人参与的执行。后台处理始终使用 Windows 身份验证,并使用报表服务器服务或无人参与的执行帐户(如果已配置)对请求进行身份验证。

有关配置 Reporting Services 中的身份验证的详细信息,请参阅以下主题:

如何在 Reporting Services 中配置 Windows 身份验证

如何在 Reporting Services 中配置基本身份验证

如何在 Reporting Services 中配置自定义身份验证或窗体身份验证

[转]Reporting Services 中的身份验证类型的更多相关文章

  1. SQLServer 中的身份验证及登录问题

    SQLServer 中的身份验证及登录问题 by:授客 QQ:1033553122 身份验证 SQL Server 支持两种身份验证模式,即Windows 身份验证模式和混合模式. Windows 身 ...

  2. 从零搭建一个IdentityServer——聊聊Asp.net core中的身份验证与授权

    OpenIDConnect是一个身份验证服务,而Oauth2.0是一个授权框架,在前面几篇文章里通过IdentityServer4实现了基于Oauth2.0的客户端证书(Client_Credenti ...

  3. 学学dotnet core中的身份验证和授权-1-概念

    前言 身份验证: Authentication 授权: Authorization net core 中的身份验证和授权这两个部分,是相辅相成的.当初我在学在部分的时候,是看的 net core 官网 ...

  4. 用Retrofit发送请求中添加身份验证

    用Retrofit发送请求中添加身份验证====================在安卓应用开发中, retrofit可以极大的方便发送http网络请求,不管是GET, POST, 还是PUT, DEL ...

  5. Azure Service Bus 中的身份验证方式 Shared Access Signature

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  6. 也谈Asp.net 中的身份验证

    钱李峰 的这篇博文<Asp.net中的认证与授权>已对Asp.net 中的身份验证进行了不错实践.而我这篇博文,是从初学者的角度补充了一些基础的概念,以便能有个清晰的认识. 一.配置安全身 ...

  7. nancy中的身份验证

    在nancy中,身份验证分为basic ,form ,token,stateless几种,basic和form这里不说了,其中如果是使用cookie来保存身份的, 需要注意的是:cookie有大小的限 ...

  8. Kubernentes中的身份验证

    Kubernentes中的身份验证 kubernetes 系统的各组件需要使用 TLS 证书对通信进行加密,本文档使用 CloudFlare 的 PKI 工具集 cfssl 来生成 Certifica ...

  9. JavaWeb应用中的身份验证(声明式)——基于表单的身份认证

    容器管理安全最普遍的类型建立在基于表单的身份验证方式上. 通过这样的方式,server自己主动将尚未验证的用户重定向到一个HTML表单.检查他们的username和password,决定他们属于哪个角 ...

随机推荐

  1. datatable fix error–Invalid JSON response

    This error is pretty common. Meaning:When loading data by Ajax(ajax|option).DataTables by default, e ...

  2. JSON知识介绍

    JSON资料整理   目录 1.什么是json 2.json语法规则 3.json基础结构 4.json基础示例 5.JSON和XML比较 6. .NET操作JSON 原始方式 通用方式 内置方式 契 ...

  3. iOS_UIWebView字体大小、字体颜色、背景色

    前段时间需要修改webView背景色,上stackoverflow搜了很久没有找到结果,百度搜索,各种转载,各种坑爹,搜出来的都只有字体大小和字体颜色,页面背景没有看到,本人发布方法,希望可以帮助到更 ...

  4. jacoco初探

    # 背景 集团的代码覆盖率平台因为网络问题无法使用,只能自己研究下. 覆盖率是衡量自动化用例效果产品的一个指标,但只是一个辅助指标,覆盖率高并不意味着质量好,但覆盖率低却能说明一些问题, # 对比 覆 ...

  5. SQL注入之PHP-MySQL实现手工注入-字符型

    SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎 ...

  6. 小技巧——病毒分析中关闭ASLR

    原文来自:https://bbs.ichunqiu.com/thread-41359-1-1.html 病毒分析中关闭ASLR 分析病毒的时候,尽可能用自己比较熟悉的平台,这样可以大大地节省时间,像我 ...

  7. 初识MQ

    [参考文章]:到底什么时候该使用MQ? 1. 什么是MQ? 消息队列(Message Quene)是一种跨进程的通信机制,用于上下游传递消息. MQ是一种非常常见的上下游“逻辑解耦+物理解耦”的消息通 ...

  8. 微信小程序 - 实战小案例 - 简易记事本

    多项技能,好像也不错.学习一下微信小程序. 教程:https://mp.weixin.qq.com/debug/wxadoc/dev/ 简介:一套用来开发在手机微信上运行的app框架,不用安装 组成: ...

  9. D3.js (v3)+react框架 基础部分之认识选择集和如何绘制一个矢量图

    首先需要下载安装d3.js  :  yarn add d3 然后在组建中引入 :  import * as d3 from 'd3' 然后定义一个方法,在componentDidMount()这个钩子 ...

  10. Metasploit中数据库的密码查看以及使用pgadmin远程连接数据库

    我们都知道,在msf下进行渗透测试工作的时候,可以将结果数据保存到数据库中,方便各个小组成员在渗透测试过程中的数据同步. 例如,Metasploit提供了db_nmap命令,它能够将Nmap扫描结果直 ...