[ 
https://issues.apache.org/jira/browse/GSOC-284?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hengliang Tan updated GSOC-284:
-------------------------------
    Description: 
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|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|mailto:gallar...@apache.org]

SbloodyS, Apache DolphinScheduler PMC, 
[zihaoxi...@apache.org|mailto:zihaoxi...@apache.org]

Difficulty: Medium
Project Size: ~150 hours (medium)

  was:
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|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)


> 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
>            Priority: Major
>              Labels: DolphinScheduler, gsoc2025, mentor, part-time
>
> 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|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|mailto:gallar...@apache.org]
> SbloodyS, Apache DolphinScheduler PMC, 
> [zihaoxi...@apache.org|mailto:zihaoxi...@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

Reply via email to