WeBankFinTech / DataSphereStudio

DataSphereStudio is a one stop data application development& management portal, covering scenarios including data exchange, desensitization/cleansing, analysis/mining, quality measurement, visualization, and task scheduling.
https://github.com/WeBankFinTech/DataSphereStudio-Doc
Apache License 2.0
3.08k stars 1k forks source link

[Feature] dss访问qualitis和schedulis组件能够实现免密登录 #954

Closed xyh15864643181 closed 1 year ago

xyh15864643181 commented 2 years ago

Search before asking

Problem Description

每次从dss访问qualitis和schedulis都需要进行一次登录,对于多个用户就非常麻烦,没有实现用户隔离情况

Description

No response

Use case

No response

solutions

No response

Anything else

No response

Are you willing to submit a PR?

zqburde commented 2 years ago

参考这个pr https://github.com/WeBankFinTech/DataSphereStudio/pull/960 修改,并将数据库中表dss_appconn_instance的enhance_json字段改为{"reqUri":"qualitis/api/v1/redirect"}

coombe commented 2 years ago

schedulis: 参考这个pr https://github.com/WeBankFinTech/DataSphereStudio/pull/960 重新编译部署schedulis的appconn后,修改表dss_appconn_instance的enhance_json字段改为{"reqUri":"schedulis/api/v1/redirect"} 在azkaban-web-server的LoginAbstractAzkabanServlet类的131行:

if (hasParam(req, "logout")) 里追加:

            final Cookie sessionId = new Cookie(SESSION_ID_NAME, "");
            sessionId.setMaxAge(0);
            sessionId.setPath("/");
            resp.addCookie(sessionId);

session超时后还会跳到登录页面,暂时是修改 azkaban.properties里的session.time.to.live配置项调大session超时时间 感觉应该还有更好的方法,希望大佬补充!

906460 commented 1 year ago

按照上面的建议《参考这个pr https://github.com/WeBankFinTech/DataSphereStudio/pull/960 修改,并将数据库中表dss_appconn_instance的enhance_json字段改为{"reqUri":"qualitis/api/v1/redirect"}》, 仍然不能免密登陆。

zqburde commented 1 year ago

@906460 可以看下跳转时候的后台日志

zqburde commented 1 year ago

在DSS1.1.1中已将该问题完全修复,具体做法只需要修改数据库中dss_appconn_instance表。针对schedulis,enhance_json字段为{"reqUri":""},homepage_uri字段为 /manager ;针对qualitis enhance_json字段为{"reqUri":""},homepage_uri字段为 #/dashboard 。其他地方均无需改动。