[Feature Request] Collaborative/Access Control enhancement
jaschahuisman opened this issue · comments
As discussed in issues #1735 and #1725, enhancing the collaborative capabilities of LangFlow can significantly improve user experience, particularly in team-based environments. This feature request outlines proposed improvements in authentication/role management, cross-account flow sharing, asynchronous updates, and flow version management.
Proposed Enhancements:
- Improved Authentication and Role Management:
- Objective: Implement a more robust authentication system to support varying levels of user permissions.
- Implementation:
- Integrate OAuth2 with current authentication systems to enable more secure and flexible user management.
- Develop roles such as Admin, Editor, and Viewer, each with different permissions regarding the creation, editing, and viewing of flows.
- Cross-Account Flow Sharing:
- Objective: Enable users to share workflows across different accounts, enhancing collaborative efforts.
- Implementation:
- Create a sharing interface where users can invite others to access workflows by email or user ID.
- Implement sharing permissions that allow users to set read-only or edit rights for each shared user.
- Asynchronous Updates and Notifications:
- Objective: Allow users to receive updates on shared flows asynchronously, ensuring all collaborators are kept up-to-date.
- Implementation:
- Utilize WebSockets for real-time data transfer to enable live updates without requiring page refreshes.
- Integrate a notification system that alerts users to changes or comments in shared flows.
- Flow Version Management:
- Objective: Implement a version control system for flows to track changes over time and enable rollback to previous versions if needed.
- Implementation:
- Develop a version history feature that records each change made to a flow, along with the user who made the change and the time.
- Provide an interface to view version history and revert to previous versions when necessary.
Technical Considerations:
Ensure that all new features adhere to best practices in security and data privacy.
Consider the scalability of the solution to accommodate a growing number of users and workflows.
Impact:
These enhancements will streamline collaborative efforts, improve security, and make LangFlow a more robust tool for both individual users and teams. They will also address current limitations noted by users, fostering a more efficient and user-friendly environment.
Hey @jaschahuisman
These are awesome and some of them are in our (internal) roadmap.
We plan on using Casbin for the RBAC/ABAC.
Do you have the expertise for any of these? We can collaborate on them if you like.
No experience in Casbin here. Where can I find the roadmap? (curious 👀) @ogabrielluiz
+1 on this.
"Utilize WebSockets for real-time data transfer to enable live updates without requiring page refreshes."
Would love this!