mirror of
https://github.com/freedbygrace/ActiveDirectoryManager.git
synced 2026-08-24 08:56:26 +00:00
Enhance Active Directory management with dynamic group management, custom dashboards, and improved documentation.
Replit-Commit-Author: Agent Replit-Commit-Session-Id: 705f2157-ef97-4fbd-89e4-8c7f2ecaea90 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/7ed01c5f-a82d-405a-b728-b2e3d127c60c/91bfedad-c6cf-43ef-9c07-9b11ffcf4a58.jpg
This commit is contained in:
@@ -35,11 +35,23 @@ The Active Directory Management Platform provides the following key features:
|
|||||||
- **User Management**: Admin interface for managing platform users and their permissions
|
- **User Management**: Admin interface for managing platform users and their permissions
|
||||||
|
|
||||||
### Advanced Features
|
### Advanced Features
|
||||||
|
- **Dynamic Group Management**: Automated group membership management
|
||||||
|
- Rules based on LDAP queries for dynamic group assignment
|
||||||
|
- Scheduled execution with flexible cron expressions
|
||||||
|
- Variable support for dynamic group and OU naming
|
||||||
|
- Automatic creation of target groups and OUs as needed
|
||||||
|
- Multi-connection support for cross-domain management
|
||||||
|
- **Custom Dashboards**: Custom visualizations for Active Directory metrics
|
||||||
|
- Multiple chart types (bar, line, pie, etc.)
|
||||||
|
- Data export capabilities (PDF, image)
|
||||||
|
- Shareable dashboard snapshots with custom branding
|
||||||
- **LDAP Query Builder**: Visual interface for building, testing, and saving complex LDAP queries
|
- **LDAP Query Builder**: Visual interface for building, testing, and saving complex LDAP queries
|
||||||
- Filter version history with revision control
|
- Filter version history with revision control
|
||||||
- Revert to previous filter versions
|
- Revert to previous filter versions
|
||||||
- Test filters against live Active Directory data
|
- Test filters against live Active Directory data
|
||||||
- Save frequently used filters for reuse
|
- Save frequently used filters for reuse
|
||||||
|
- Drag and drop condition reordering
|
||||||
|
- One-click copy feature for generated queries
|
||||||
- **API Filtering**: Dynamic property filtering on all API endpoints
|
- **API Filtering**: Dynamic property filtering on all API endpoints
|
||||||
- **Bulk Operations**: Efficient batch processing for operations on multiple directory objects
|
- **Bulk Operations**: Efficient batch processing for operations on multiple directory objects
|
||||||
- **Audit Logging**: Comprehensive audit trail for all directory changes
|
- **Audit Logging**: Comprehensive audit trail for all directory changes
|
||||||
@@ -191,6 +203,9 @@ Configuration is managed through environment variables. See [.env.example](.env.
|
|||||||
- **LDAP**: Connection parameters for Active Directory
|
- **LDAP**: Connection parameters for Active Directory
|
||||||
- **Rate Limiting**: API request restrictions
|
- **Rate Limiting**: API request restrictions
|
||||||
- **Logging**: Debug and audit log configuration
|
- **Logging**: Debug and audit log configuration
|
||||||
|
- **Default Admin**: Initial admin user configuration
|
||||||
|
- **Authentication**: LDAP and OpenID Connect (OIDC) authentication settings
|
||||||
|
- **Registration**: Enable/disable user registration
|
||||||
|
|
||||||
## LDAP Query Builder
|
## LDAP Query Builder
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,109 @@
|
|||||||
|
# Active Directory Management API Features
|
||||||
|
|
||||||
|
## Core Features
|
||||||
|
|
||||||
|
### LDAP Connection Management
|
||||||
|
- Configure and manage multiple LDAP connections
|
||||||
|
- Test connections with automatic status tracking
|
||||||
|
- Support for TLS/SSL secure connections
|
||||||
|
|
||||||
|
### User Management
|
||||||
|
- View and search Active Directory users
|
||||||
|
- Filter by various attributes (name, email, department, etc.)
|
||||||
|
- Enable/disable user accounts
|
||||||
|
- Reset passwords
|
||||||
|
- Move users between Organizational Units
|
||||||
|
- Add/remove users from groups
|
||||||
|
|
||||||
|
### Group Management
|
||||||
|
- Create, edit, and delete groups
|
||||||
|
- View group memberships
|
||||||
|
- Add and remove members
|
||||||
|
- Change group scope and type
|
||||||
|
- Move groups between Organizational Units
|
||||||
|
|
||||||
|
### Dynamic Group Management
|
||||||
|
- Create LDAP query-based rules for automatic group membership
|
||||||
|
- Schedule rule execution with cron expressions (basic or advanced mode)
|
||||||
|
- Bind rules to specific LDAP connections
|
||||||
|
- Support for dynamic variables in group names and OU paths
|
||||||
|
- Automatic creation of groups and OUs as needed
|
||||||
|
|
||||||
|
### Organizational Unit Management
|
||||||
|
- Create, edit, and delete OUs
|
||||||
|
- Move OUs in the directory tree
|
||||||
|
- Set management delegation
|
||||||
|
|
||||||
|
### Computer Management
|
||||||
|
- View and search domain computers
|
||||||
|
- Filter by various attributes (name, OS, last logon)
|
||||||
|
- Enable/disable computer accounts
|
||||||
|
- Move computers between Organizational Units
|
||||||
|
- Add/remove computers from groups
|
||||||
|
|
||||||
|
### Domain Information
|
||||||
|
- View domain details and functional levels
|
||||||
|
- Domain controller information
|
||||||
|
- Trust relationships
|
||||||
|
|
||||||
|
### Sites and Subnets
|
||||||
|
- View and manage Active Directory sites
|
||||||
|
- Configure subnet assignments to sites
|
||||||
|
- Create and manage site links
|
||||||
|
|
||||||
|
### LDAP Query Builder
|
||||||
|
- Visual query builder with condition groups
|
||||||
|
- Support for multiple filter conditions
|
||||||
|
- Real-time LDAP filter generation
|
||||||
|
- Filter saving and version control
|
||||||
|
- One-click copy feature
|
||||||
|
- Drag and drop condition ordering
|
||||||
|
|
||||||
|
### Dashboard and Reporting
|
||||||
|
- Customizable dashboards with various chart types
|
||||||
|
- Data visualization for Active Directory metrics
|
||||||
|
- Export capability to PDF or images
|
||||||
|
- Shareable dashboard snapshots with custom branding
|
||||||
|
|
||||||
|
### API Access
|
||||||
|
- API token management for programmatic access
|
||||||
|
- Rate limiting and expiration controls
|
||||||
|
- Role-based access control for API consumers
|
||||||
|
|
||||||
|
### Audit Logging
|
||||||
|
- Comprehensive audit trail for all directory changes
|
||||||
|
- Filterable and searchable logs
|
||||||
|
- Export capability
|
||||||
|
|
||||||
|
## Authentication and Security
|
||||||
|
|
||||||
|
### Multi-method Authentication
|
||||||
|
- Local username/password authentication
|
||||||
|
- LDAP authentication against configured connections
|
||||||
|
- OpenID Connect (OIDC) integration
|
||||||
|
|
||||||
|
### Role-based Access Control
|
||||||
|
- Granular permission system
|
||||||
|
- Multiple user roles
|
||||||
|
- Role assignment and management
|
||||||
|
|
||||||
|
## Technical Features
|
||||||
|
|
||||||
|
### API Documentation
|
||||||
|
- Full Swagger/OpenAPI documentation
|
||||||
|
- Interactive API testing
|
||||||
|
- Downloadable API specifications
|
||||||
|
|
||||||
|
### Caching
|
||||||
|
- Redis caching support for improved performance
|
||||||
|
- Configurable cache expiration
|
||||||
|
|
||||||
|
### Performance Optimization
|
||||||
|
- Pagination for large data sets
|
||||||
|
- Request throttling
|
||||||
|
- Query optimization
|
||||||
|
|
||||||
|
### Deployment
|
||||||
|
- Docker-based deployment
|
||||||
|
- Comprehensive environment variable configuration
|
||||||
|
- Support for various deployment scenarios
|
||||||
@@ -49,29 +49,6 @@ const swaggerOptions = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
schemas: {
|
schemas: {
|
||||||
User: {
|
|
||||||
type: "object",
|
|
||||||
properties: {
|
|
||||||
id: { type: "integer" },
|
|
||||||
username: { type: "string" },
|
|
||||||
email: { type: "string" },
|
|
||||||
fullName: { type: "string" },
|
|
||||||
role: { type: "string" },
|
|
||||||
createdAt: { type: "string", format: "date-time" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
ApiToken: {
|
|
||||||
type: "object",
|
|
||||||
properties: {
|
|
||||||
id: { type: "integer" },
|
|
||||||
name: { type: "string" },
|
|
||||||
token: { type: "string" },
|
|
||||||
userId: { type: "integer" },
|
|
||||||
customPermissions: { type: "array", items: { type: "string" } },
|
|
||||||
expiresAt: { type: "string", format: "date-time" },
|
|
||||||
createdAt: { type: "string", format: "date-time" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
LdapConnection: {
|
LdapConnection: {
|
||||||
type: "object",
|
type: "object",
|
||||||
properties: {
|
properties: {
|
||||||
|
|||||||
Reference in New Issue
Block a user