Hengliang Tan created GSOC-284: ---------------------------------- Summary: Enhancing Apache DolphinScheduler with Generalized OIDC Authentication Key: GSOC-284 URL: https://issues.apache.org/jira/browse/GSOC-284 Project: Comdev GSOC Issue Type: New Feature Reporter: Hengliang Tan
h1. Background Apache DolphinScheduler is a distributed and extensible workflow scheduler platform designed to orchestrate complex data processing tasks. It provides a user-friendly interface for defining, scheduling, and monitoring workflows, making it easier to manage and automate data pipelines. DolphinScheduler supports various types of tasks, including shell scripts, SQL queries, and custom scripts, and integrates seamlessly with popular big data ecosystems. Currently, the Apache DolphinScheduler system supports user login via Password, LDAP, Casdoor SSO, and OAuth. However, as a data platform, it frequently needs to integrate with enterprise - internal user accounts to achieve unified identity authentication, which is crucial for ensuring system security and unified user account management. The existing implementation of Casdoor has a high degree of dependence on the Casdoor project, and the OAuth implementation lacks universality and flexibility. Our objective is to implement a more generalized OIDC (OpenID Connect) login authentication mechanism. This will enable users to make better use of unified login authentication. Moreover, popular open source login authentication projects like Dexidp, Keycloak, and OAuthProxy all support OIDC. By supporting OIDC, users can integrate with both internal and third - party login authentication methods, such as Feishu Login and WeChat Work Login. h1. Relevant Skills Strong proficiency in Java development. Experience in modern frontend technologies and frameworks. Highlevel expertise in Spring Boot development. Thorough familiarity with OIDC and OAuth2 protocols. Keen interest in opensource projects and eagerness to learn and adapt. h1. Tasks Initiate and conduct experiments with Apache DolphinScheduler to comprehensively understand its current functionalities. Implement and support a more generalized OIDC (OpenID Connect) login authentication mechanism. Compose corresponding E2E test cases. Create corresponding documentation for third-party login integrations, covering Keycloak, Dexidp, OAuthProxy, as well as Feishu Login and WeChat Work Login. Optimize the UI of the Apache DolphinScheduler login page. Ensure compatibility with the existing functionalities of Apache DolphinScheduler during the process of focusing on enhancements. h1. Learning Material Apache DolphinScheduler HomePage: https://dolphinscheduler.apache.org Apache DolphinScheduler GitHub Repository: https://github.com/apache/dolphinscheduler Sprint OAuth 2.0 Client: https://docs.spring.io/spring-security/reference/reactive/oauth2/client/index.html OIDC (OpenID Connect): https://openid.net/developers/how-connect-works/ h1. Mentor Gallardot, Apache DolphinScheduler committer, gallar...@apache.org Difficulty: Medium Project Size: ~150 hours (medium) -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: gsoc-unsubscr...@community.apache.org For additional commands, e-mail: gsoc-h...@community.apache.org