我们可以保持网络客户端和jsreport服务器对身份服务器4进行身份验证

时间:2018-03-26 08:23:57

标签: authentication jsreport

您好我正在尝试通过身份服务器4实现身份验证(示例:" jsreport-with-authorization-server-sample"),我可以使用身份验证服务器设置Web应用程序客户端和jsreport服务器。但问题是我们必须从以下位置删除管理部分:

"authentication": { 
   "admin": {
   "username": "admin",
   "password": "password"
}

添加

"authorizationServer": {
    "tokenValidation": {
    "endpoint": "http://localhost:5000/connect/introspect",
    "usernameField": "username",
    "activeField": "active",
    "scope": {
    "valid": ["jsreport"]
},
"auth": {
     "type": "basic",
     "basic": {
     "clientId": "jsreport",
     "clientSecret": "secret"
    }
   }
  }
 },
 "enabled": true
} 

现在我们可以在没有登录的情况下从jsreport服务器执行报告。我的问题是我们可以保持客户和客户。报告服务器身份服务器4的身份验证?

1 个答案:

答案 0 :(得分:0)

是的,你可以保持授权服务器auth和普通的jsreport登录。

您只需要保留admin配置的authentication选项。

使用这样的配置:

{
  ...
  "authentication": {
    "cookieSession": {
      "secret": "<your strong secret>"
    },
    "admin": {
      "username": "admin",
      "password": "password"
    },
    "authorizationServer": {
      "tokenValidation": {
        "endpoint": "http://jsreport-sample.com:5000/connect/introspect",
        "usernameField": "username",
        "activeField": "active",
        "scope": {
          "valid": ["jsreport"]
        },
        "auth": {
          "type": "basic",
          "basic": {
            "clientId": "jsreport",
            "clientSecret": "secret"
          }
        }
      }
    },
    "enabled": true
  }
  ...
}

你可以保持jsreport studio登录,也可以使用基于令牌的auth(委托给授权服务器)和普通的基本身份验证(由jsreport处理)从http API调用登录