apache/airavata-custos

Development of a User and Admin Dashboard for Custos

Opened this issue · 0 comments

Project Overview

Apache Airavata Custos is an integral component of the Apache Airavata ecosystem, focusing on identity and access management for science gateways. Custos provides functionalities such as identity management, user profile management, role-based access control, and group management. This project aims to design and implement a comprehensive dashboard for Apache Airavata Custos to enhance user interaction and administration capabilities.

Project Goals

  • User Dashboard: Implement a user-friendly dashboard that allows individuals to manage their personal details, including but not limited to, profile information, password changes, and security settings. The dashboard should provide a clear and intuitive interface that enables users to easily navigate and update their personal information.
  • Admin Dashboard: Develop an administrative interface for users with Admin roles, providing them with the ability to manage tenants, add identity providers (IdPs), assign roles to users, and add users to groups. The dashboard should expose necessary functionalities of Custos in a secure and efficient manner, allowing administrators to effectively manage the system's authentication and authorization capabilities.

Technical Requirements

  • The frontend of the dashboard should be developed using Vue.js, adhering to best practices for user interface design and user experience.
  • Utilize existing APIs provided by Apache Airavata Custos for the dashboard functionalities. ​​Modifications or updates to these APIs may be required depending on the dashboard requirements, but there is no expectation to implement the backend services from scratch.

Expected Outcome

  • A fully functional user dashboard that allows individuals to manage their personal information and settings.
  • An administrative dashboard with capabilities to manage tenants, identity providers, user roles, and group memberships.
  • Documentation covering the design decisions, implementation details, and usage instructions for both dashboards.