隐藏 SSRS 授权

Make SSRS authorization hidden

更新

所以,我尝试做 ajax 的原因是登录表单,当用户在应用程序中打开 SSRS 报告时会显示该表单。我有报告框架(两个不同的服务器)并希望在应用程序中对用户不可见授权。对于第一台服务器 - kuybit 我有它,但 SSRS 有其他身份验证表单类型,我遇到了麻烦。 如果有人知道更好的方法,除了 ajax 请求它可以帮助。

旧版Q

我在 iframe 中有用于 BI 报告的应用程序和 Microsoft 服务器。 我正在尝试向报告服务器发送跨域 ajax 请求,但它不起作用,因为跨域的第一个请求是 OPTIONS。而我的 ajax 从来没有 工作了。 我的 ajax 请求:

var path = route + ':444/ReportServer/Pages/ReportViewer.aspx' + reportName + '&rs:Command=Render&rc:stylesheet=HideToolBar';
 $.ajax({
   url: path,
   type: 'GET',
   headers: {
      'Access-Control-Allow-Headers': 'Authorization',
      'Content-Type':'application/xml',
      'Authorization' : 'Basic ' + btoa(ssrs_login + ":" + ssrs_password)}
 }).success(function (data) {
     //todo smth
 });

请问有人能帮忙吗

启用 CORS 到 SSRS:

  1. 打开 Microsoft SQL Server Studio
  2. 连接到服务器 -> 服务器类型(设置为 "Reporting Services")
  3. 登录 -> 右键单击​​服务器根节点 -> 属性
  4. 从服务器属性 window select、"Advanced" 找到 "User-defined" 并在此标题下找到所有 CORS 设置。

设置 - AccessControlAllowCredentials 为 true <- 允许传递 cookie - AccessControlAllowOrigin 到您的其他服务器的 URL 以便 OPTION 请求可以传递