[转]Reporting Services 中的身份验证类型
本文转自: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 中的身份验证类型的更多相关文章
- SQLServer 中的身份验证及登录问题
SQLServer 中的身份验证及登录问题 by:授客 QQ:1033553122 身份验证 SQL Server 支持两种身份验证模式,即Windows 身份验证模式和混合模式. Windows 身 ...
- 从零搭建一个IdentityServer——聊聊Asp.net core中的身份验证与授权
OpenIDConnect是一个身份验证服务,而Oauth2.0是一个授权框架,在前面几篇文章里通过IdentityServer4实现了基于Oauth2.0的客户端证书(Client_Credenti ...
- 学学dotnet core中的身份验证和授权-1-概念
前言 身份验证: Authentication 授权: Authorization net core 中的身份验证和授权这两个部分,是相辅相成的.当初我在学在部分的时候,是看的 net core 官网 ...
- 用Retrofit发送请求中添加身份验证
用Retrofit发送请求中添加身份验证====================在安卓应用开发中, retrofit可以极大的方便发送http网络请求,不管是GET, POST, 还是PUT, DEL ...
- Azure Service Bus 中的身份验证方式 Shared Access Signature
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- 也谈Asp.net 中的身份验证
钱李峰 的这篇博文<Asp.net中的认证与授权>已对Asp.net 中的身份验证进行了不错实践.而我这篇博文,是从初学者的角度补充了一些基础的概念,以便能有个清晰的认识. 一.配置安全身 ...
- nancy中的身份验证
在nancy中,身份验证分为basic ,form ,token,stateless几种,basic和form这里不说了,其中如果是使用cookie来保存身份的, 需要注意的是:cookie有大小的限 ...
- Kubernentes中的身份验证
Kubernentes中的身份验证 kubernetes 系统的各组件需要使用 TLS 证书对通信进行加密,本文档使用 CloudFlare 的 PKI 工具集 cfssl 来生成 Certifica ...
- JavaWeb应用中的身份验证(声明式)——基于表单的身份认证
容器管理安全最普遍的类型建立在基于表单的身份验证方式上. 通过这样的方式,server自己主动将尚未验证的用户重定向到一个HTML表单.检查他们的username和password,决定他们属于哪个角 ...
随机推荐
- Oracle EBS主界面的Top Ten List
http://blog.csdn.net/pan_tian/article/details/7749128 Top Ten List的数据保存在表FND_USER_DESKTOP_OBJECTS中,登 ...
- XML语法随记
1.特殊字符的转义 & ---- & < ---- < > ---- > " ---- " ' ----- &ap ...
- 分形之列维(levy)曲线
莱维C形曲线(Lévy C curve)是个自我相似的分形,最先由保罗·皮埃尔·莱维在1938年的论文Plane or Space Curves and Surfaces Consisting of ...
- 缓存中使用的ReentrantReadWriteLock锁
java中提供了lock锁,简便了设计缓存,下面程序主要是使用读写锁的应用.... import java.util.HashMap; import java.util.Map; import jav ...
- 10 个免费的Bootstrap Admin 主题,模板收集
In designing websites today, one of the must have frameworks is the twitter bootstrap. To those who ...
- Oracle.ManagedDataAccess.Client.OracleException:“ORA-00936: 缺失表达式”
static void Main(string[] args) { string sql = "insert into StudentC(Stuid, Stuname, Stupass) v ...
- 【新手向】阿里云上ubuntu+flask+gunicorn+nginx服务器部署(二)项目部署
本项目实现的是类似于ins的图片分享网站.继续(一),当nginx的配置已修改好后,要在远程服务器上部署网站,只需要几个步骤: 1 前期准备 2 将运行网站的代码从github上下载过来 3 下载依赖 ...
- js中两种for循环的使用
针对两种for循环的使用 1. for in循环的使用环境 可用在字符串.数组.对象中, 需注意:其中遍历对象得到的是每个key 的value值 2. for 变量递加的方式 ...
- 31_网络编程-struct
一.struct 1.简述 我们可以借助一个模块,这个模块可以把要发送的数据长度转换成固定长度的字节.这样客户端每次接收消息之前只要先接受这个固定长度字节的内容看一看接下来要接收的信息大小,那么 ...
- javascript之快速排序
快速排序思想其实还是挺简单的,分三步走: 1.在数组中找到基准点,其他数与之比较. 2.建立两个数组,小于基准点的数存储在左边数组,大于基准点的数存储在右边数组. 3.拼接数组,然后左边数组与右边数组 ...
注意
重要提示