Projects
Projects in the PDS platform are a powerful feature for organizing resources and managing user access. Each project serves as a container that can include its own set of clusters, namespace, templates, backup locations, data services, and users. This separation allows organizations to isolate environments, control access, and manage resources effectively, which is particularly useful in multi-tenant environments or for teams working on distinct projects.
For more information about the projects interface in PDS and the procedures to create, manage project-specific configurations, and seamlessly linking them to their respective database deployments, clusters, and namespaces, see Projects management.
Project management
Project management within PDS involves creating, updating, and deleting projects, each configured with specific resources and access controls. This ensures that resources are allocated appropriately and access is granted only to authorized users.
User access
User access within projects is crucial for ensuring that the right people have the appropriate level of control and visibility over resources. PDS allows administrators to define which users have access to specific projects and what roles they have within those projects.
-
Define user roles.
- Account Admin: Has full access and management capabilities across all infrastructure components and applications. Also, responsible for creating and managing projects and users, and configuring global settings.
- Project Admin: Has access and management capabilities within specific projects. Additionally, they can manage applications, utilize global resources associated with their assigned projects, and invite other users to these projects. However, they do not have global access.
- Project User: Has access to and management capabilities for data services and backups within their assigned projects. Limited to operational tasks within specific projects, with the least permissions.
For more information about user roles and permissions in the PDS platform, see RBAC.
-
Assign users to projects.
Example
Consider a software development company that works with multiple clients. Each client requires isolated environments for their projects to ensure security and manage resources efficiently.
Client A project:
- Resources: Includes a dedicated cluster for development and testing, a PostgreSQL database for application data, and an Elasticsearch instance for logging and search capabilities.
- User Access:
- Project manager (Project Admin)
- Developers (Project User)
- QA Team (Project User)
Client B Project:
- Resources: Includes a separate cluster for production, a MySQL database for e-commerce transactions, and a Redis cache for performance optimization.
- User access:
- Project manager (Project Admin)
- Developers (Project User)
- Support team (Project User)
Internal project:
- Resources: Includes a cluster for internal tools, a MongoDB database for internal application data, and a Jenkins instance for CI/CD pipelines.
- User access:
- IT Admin (Project Admin)
- DevOps team (Project User)
- Security team (Project User)
By leveraging the project management features in PDS, the software development company can effectively segregate resources and manage access across different clients. Each client has dedicated resources and specific access controls, ensuring that sensitive data is protected and only accessible to authorized personnel. This structured approach enhances security, resource management, and operational efficiency, allowing the corporation to scale and adapt to changing business needs seamlessly.