AuditSphere - User Guide
Table of Contents
- Introduction
- Getting Started
- Initial Setup
- Dashboard Overview
- Connecting Cloud Providers
- Repositories
- Monitoring Activity
- Anomaly Detection
- Compliance Monitoring
- Data Classification
- Data Retention
- Managing Alerts
- Access Reviews
- Reports
- Settings & Configuration
- Troubleshooting
Introduction
AuditSphere is a multi-cloud metadata aggregation and compliance platform that provides unified security monitoring across Microsoft 365, Google Workspace, Box, Dropbox, and other enterprise data repositories. It helps organizations:
- Aggregate metadata across all cloud storage providers (never stores document content)
- Monitor user activity and file access in real-time across all providers
- Detect anomalous behavior using per-provider ML models
- Assess compliance against 8 frameworks (GDPR, HIPAA, SOX, NIST, ISO 27001, SOC 2, CCPA, CIS MS365)
- Classify data with a unified taxonomy mapped to provider-native labels
- Enforce retention policies and detect violations
- Review and manage access permissions systematically
- Generate reports for auditing and compliance evidence
Getting Started
System Requirements
- Modern web browser (Chrome, Firefox, Edge, Safari)
- Microsoft 365 tenant with appropriate admin permissions
- Valid admin user account
Accessing AuditSphere
- Navigate to your organization’s AuditSphere URL
- Click Sign In to authenticate
- You will be redirected to your identity provider
- Enter your credentials and complete authentication
- Upon successful login, you’ll be directed to the Dashboard
Initial Setup
First-Time Administrator Setup
If you’re setting up AuditSphere for your organization for the first time:
Step 1: Environment Configuration
The following environment variables must be configured by your administrator:
| Variable | Description |
|---|---|
DATABASE_URL | PostgreSQL connection string |
AUTH0_CLIENT_ID | Identity provider client ID |
AUTH0_CLIENT_SECRET | Identity provider secret |
AUTH0_ISSUER_BASE_URL | Identity provider URL |
MICROSOFT_CLIENT_ID | Microsoft app registration ID |
MICROSOFT_CLIENT_SECRET | Microsoft app secret |
MICROSOFT_TENANT_ID | Your Microsoft 365 tenant ID |
NEXTAUTH_SECRET | Session encryption key |
NEXTAUTH_URL | Application base URL |
Step 2: Microsoft App Registration
- Go to Azure Portal > App Registrations
- Create a new registration for AuditSphere
- Configure the redirect URI to:
{YOUR_APP_URL}/api/microsoft/callback
Required API Permissions
Configure the following permissions in your app registration:
Microsoft Graph Permissions:
| Permission | Type | Description | Admin Consent |
|---|---|---|---|
AuditLog.Read.All | Delegated | Read audit log data | Yes |
AuditLog.Read.All | Application | Read all audit log data | Yes |
Directory.Read.All | Delegated | Read directory data | Yes |
Directory.Read.All | Application | Read directory data | Yes |
Files.Read | Delegated | Read user files | No |
Files.Read.All | Delegated | Read all files that user can access | No |
Files.ReadWrite.All | Application | Read and write files in all site collections | Yes |
GroupMember.ReadWrite.All | Application | Read and write all group memberships | Yes |
IdentityRiskyUser.Read.All | Application | Read all identity risky user information | Yes |
Mail.ReadWrite | Application | Read and write mail in all mailboxes | Yes |
Mail.Send | Application | Send mail as any user | Yes |
offline_access | Delegated | Maintain access to data you have given it access to | No |
SecurityAlert.Read.All | Application | Read all security alerts | Yes |
SecurityEvents.Read.All | Delegated | Read your organization’s security events | Yes |
SecurityEvents.Read.All | Application | Read your organization’s security events | Yes |
SharePointTenantSettings.ReadWrite.All | Application | Read and change SharePoint and OneDrive tenant settings | Yes |
Sites.FullControl.All | Application | Have full control of all site collections | Yes |
Sites.Manage.All | Application | Create, edit, and delete items and lists in all site collections | Yes |
Sites.Read.All | Delegated | Read items in all site collections | No |
Sites.Read.All | Application | Read items in all site collections | Yes |
User.Read | Delegated | Sign in and read user profile | No |
User.Read.All | Delegated | Read all users’ full profiles | Yes |
User.Read.All | Application | Read all users’ full profiles | Yes |
Office 365 Management APIs Permissions:
| Permission | Type | Description | Admin Consent |
|---|---|---|---|
ActivityFeed.Read | Application | Read activity data for your organization | Yes |
ActivityFeed.Read | Delegated | Read activity data for your organization | Yes |
SharePoint Permissions:
| Permission | Type | Description | Admin Consent |
|---|---|---|---|
Sites.FullControl.All | Application | Have full control of all site collections | Yes |
- Grant admin consent for all permissions in your organization
Expose an API Configuration
- Navigate to Expose an API in your app registration
- Set the Application ID URI (e.g.,
api://{your-client-id}) - Add a scope with the following settings:
- Scope name:
access_as_user - Who can consent: Admins and users
- Admin consent display name: Access AuditSphere API
- User consent display name: Access AuditSphere
- State: Enabled
- Scope name:
- If using a separate frontend client, add it under Authorized client applications with the scope selected
Authentication Configuration
- Go to Authentication in your app registration
- Add platform configuration for Web
- Add redirect URI:
{YOUR_APP_URL}/api/microsoft/callback - Enable Access tokens and ID tokens under Implicit grant
Create Client Secret
- Go to Certificates & secrets
- Create a new client secret
- Copy the secret value immediately (it won’t be shown again)
- Add the secret to your environment configuration as
MICROSOFT_CLIENT_SECRET
Step 3: Database Setup
Run the database migration to create required tables:
npm run db:generate
npx prisma migrate deployStep 4: Start the Application
# Development mode
npm run dev
# Production mode
npm run build
npm startDashboard Overview
The Dashboard is your central hub for monitoring security status.
Dashboard Components
Quick Stats Cards
- Total Events (24h): Number of audit events in the last 24 hours
- Anomalies Detected: Open anomalies requiring attention
- Active Alerts: Security alerts requiring action
- Compliance Score: Overall compliance percentage
Connection Status
The Microsoft 365 connection indicator shows:
- Connected (green): Successfully connected to your tenant
- Disconnected (red): No active connection - action required
Activity Overview
Visual charts showing:
- Event trends over time
- Event distribution by type
- User activity patterns
Navigation Menu
| Menu Item | Description |
|---|---|
| Dashboard | Main overview with cross-provider stats |
| Compliance | Multi-framework compliance check results |
| Activity | Detailed audit event logs |
| Anomalies | ML-detected unusual behavior |
| Alerts | Security alert management |
| Repositories | Cross-provider file and metadata explorer |
| Sites | SharePoint site management |
| Classification | Data classification taxonomy and label mapping |
| Retention | Retention policy management and violation monitoring |
| Access Review | Permission review campaigns |
| Reports | Generate and download reports |
| Settings | User and system configuration |
Connecting Cloud Providers
AuditSphere supports connecting multiple cloud storage providers. Each connection uses OAuth to securely access metadata without storing document content.
Supported Providers
| Provider | What’s Collected |
|---|---|
| Microsoft 365 | SharePoint sites, OneDrive files, permissions, audit logs, sensitivity labels |
| Google Workspace | Google Drive files, permissions, admin audit logs, labels |
| Box | Files, collaborations, event logs, classifications |
| Dropbox Business | Files, sharing settings, team activity logs |
Connecting a Provider
- Navigate to Settings > Connections
- Find the provider you want to connect in the Cloud Connections card
- Click Connect
- You’ll be redirected to the provider’s authentication page
- Grant the requested permissions (metadata read-only)
- You’ll be redirected back to AuditSphere
Connection Status
- Active — Connected and tokens are valid
- Expired — Token has expired, click Reconnect to re-authenticate
- Revoked — Connection was disconnected by the user
Microsoft 365 Connection
- Navigate to Settings > Connections
- Click Connect next to Microsoft 365
- You’ll be redirected to Microsoft’s authentication page
- Sign in with an account that has admin permissions
- Review and accept the requested permissions
- Upon success, you’ll be redirected back to AuditSphere
Connection Status
After connecting, the system will:
- Begin syncing audit events (every 15 minutes)
- Display your connected account information
- Show connection health status
Disconnecting
If you need to disconnect:
- Go to Settings > Connections
- Click Disconnect next to your Microsoft 365 connection
- Confirm the disconnection
Note: Disconnecting will stop event collection but will not delete historical data.
Monitoring Activity
Viewing Audit Events
Navigate to Activity to see all collected audit events.
Event Information
Each event displays:
- Timestamp: When the event occurred
- Operation: Type of action (e.g., FileAccessed, FileShared)
- User: Who performed the action
- Resource: File or site affected
- IP Address: Source IP of the action
- User Agent: Client application used
Filtering Events
Use the filter panel to narrow results:
| Filter | Options |
|---|---|
| Date Range | Custom date selection |
| Operation | FileAccessed, FileModified, Shared, etc. |
| User | Specific user email |
| Site | SharePoint site URL |
| User Type | Regular, Guest, Admin, System |
Searching Events
Use the search bar to find events by:
- File name
- User email
- Site URL
- Operation type
Exporting Events
Click Export to download filtered events as CSV.
Anomaly Detection
How Anomaly Detection Works
AuditSphere uses machine learning to identify unusual patterns:
- Access Patterns: Unusual file access behavior
- Timing Anomalies: Activity at unusual times
- Volume Anomalies: Unusually high activity levels
- External Sharing: Suspicious sharing with external users
Viewing Anomalies
Navigate to Anomalies to see detected issues.
Anomaly Details
Each anomaly shows:
- Type: Category of anomaly
- Severity: CRITICAL, HIGH, MEDIUM, LOW
- Confidence: ML model confidence score (0-100%)
- Status: NEW, INVESTIGATING, RESOLVED, FALSE_POSITIVE
- Related Event: The audit event that triggered detection
Managing Anomalies
Update Status
- Click on an anomaly to view details
- Select new status from dropdown
- Add notes if needed
- Click Update
Bulk Actions
- Select multiple anomalies using checkboxes
- Choose action from bulk menu
- Confirm the action
Status Workflow
Compliance Monitoring
Supported Frameworks
AuditSphere includes 8 built-in compliance frameworks, all provider-agnostic:
| Framework | Focus Areas | Key Rules |
|---|---|---|
| GDPR | Data retention, classification, access control, audit trails | No anonymous sharing, retention for sensitive files, classification coverage |
| HIPAA | PHI access control, audit trails, retention | Zero external sharing, complete audit trails, mandatory retention |
| SOX | Financial document controls, audit trails | Restricted access, 7-year retention, audit completeness |
| NIST 800-53 | Access enforcement, audit, categorization | No anonymous links, event monitoring, media sanitization |
| ISO 27001 | Access control, classification, logging | Access policy, information classification, event logging |
| SOC 2 | Logical access, monitoring, confidentiality | Access security, system monitoring, confidentiality commitments |
| CCPA | Consumer data privacy, classification, retention | No public PI access, data classification, defined retention |
| CIS MS365 | Microsoft-specific security configuration | External sharing, anonymous links, guest access, sensitivity labels |
Running Compliance Checks
- Navigate to Compliance
- In the Quick Actions panel, click the framework you want to run (e.g., Run HIPAA Checks)
- Wait for checks to complete
- Results appear in the main panel with pass/fail status per rule
Rule Types
The compliance engine uses 4 types of declarative rules:
| Rule Type | What It Checks | Data Source |
|---|---|---|
| Permission Check | Anonymous links, external sharing, overly broad access | file_permissions table |
| Retention Check | Sensitive files without retention policies | file_metadata + classification |
| Classification Check | Percentage of unclassified files | file_metadata |
| Audit Check | Unusual event patterns (e.g., guest permission changes) | audit_activities table |
Compliance Dashboard
- Overall Score: Percentage of passing checks across all frameworks
- By Category: Breakdown by compliance area (access_control, data_retention, etc.)
- By Severity: Breakdown by critical/high/medium/low
- Check Results: Individual rule pass/fail with evidence and remediation
Check Severity Levels
| Level | Description |
|---|---|
| CRITICAL | Must fix immediately — data exposure risk |
| HIGH | Should fix soon — compliance violation |
| MEDIUM | Recommended to fix — best practice |
| LOW | Nice to have — hardening measure |
Filtering Results
Use the Standard dropdown to filter by framework (e.g., show only GDPR results) and the Category dropdown to filter by area (e.g., data_retention only).
Data Classification
Taxonomy
AuditSphere uses a four-level classification taxonomy:
| Level | Color | Description |
|---|---|---|
| Public | Green | Information intended for public disclosure |
| Internal | Blue | Information for internal use within the organization |
| Confidential | Orange | Sensitive information requiring restricted access |
| Restricted | Red | Highly sensitive information with strict access controls |
Label Mapping
Provider-native labels are mapped to the unified taxonomy:
- Microsoft Sensitivity Labels → unified levels
- Google Drive Labels → unified levels
- Box Classifications → unified levels
Navigate to Classification > Label Mappings to manage mappings.
Coverage
The Classification page shows how many files fall into each level across all providers, and what percentage remain unclassified.
Data Retention
Retention Policies
Define how long data should be retained based on classification:
- Navigate to Retention > Policies
- Create a policy with retention days, action (delete/archive/review), and applicable classification levels
Violation Detection
AuditSphere automatically detects retention violations:
| Violation Type | Description | Severity |
|---|---|---|
| Expired, not deleted | Retention expired but file still exists | High |
| Expired, not archived | Retention expired, archive action specified but not archived | High |
| Missing retention | Sensitive file (confidential/restricted) has no retention policy | Medium |
Retention Dashboard
Navigate to Retention to see:
- Active policies and their configuration
- Violation list with file details, provider, and overdue days
- Per-provider compliance rate
Managing Alerts
Alert Types
| Type | Description |
|---|---|
| ANOMALY | ML-detected unusual behavior |
| COMPLIANCE | Compliance check failures |
| SECURITY | Security policy violations |
Alert Severity
- CRITICAL: Immediate action required
- HIGH: Urgent attention needed
- MEDIUM: Should be reviewed soon
- LOW: Informational
Alert Status
| Status | Description |
|---|---|
| NEW | Unreviewed alert |
| ACKNOWLEDGED | Under investigation |
| RESOLVED | Issue addressed |
| DISMISSED | No action needed |
Managing Alerts
Acknowledge an Alert
- Click on the alert
- Click Acknowledge
- Add investigation notes
- Alert moves to ACKNOWLEDGED status
Resolve an Alert
- Open an acknowledged alert
- Click Resolve
- Document the resolution
- Alert moves to RESOLVED status
Dismiss an Alert
- Click Dismiss for false positives
- Provide reason for dismissal
- Alert is removed from active view
Alert Configuration
Navigate to Settings > Alert Configuration to:
- Create custom alert rules
- Set notification preferences
- Configure severity thresholds
Access Reviews
Access Reviews help you systematically review and clean up permissions.
Creating a Review Campaign
-
Navigate to Access Review > Campaigns
-
Click Create Campaign
-
Configure the campaign:
- Name: Descriptive campaign name
- Description: Purpose of the review
- Scope: Select sites to include
- Reviewers: Assign reviewers
- Due Date: Review deadline
-
Click Create
Campaign Workflow
| Stage | Description |
|---|---|
| Draft | Configuration in progress |
| Scheduled | Waiting to start |
| Collecting | Gathering permissions from Microsoft 365 |
| In Review | Reviewers making decisions |
| Completed | All decisions made and executed |
Reviewing Permissions
As a Reviewer
- Navigate to Access Review > My Reviews
- See your pending review items
- For each permission, choose:
- Retain: Keep the access
- Remove: Revoke the access
- Provide justification for your decision
- Submit decisions
Bulk Decisions
- Select multiple items
- Choose bulk action (Retain All / Remove All)
- Provide common justification
- Submit
Designated Owners
Assign resource owners who are responsible for reviewing their resources:
- Go to Access Review > Designated Owners
- Click Add Owner
- Select the resource (site/drive)
- Assign the owner
- Optionally mark as primary owner
Scheduled Reviews
Set up recurring reviews:
- Go to Access Review > Schedules
- Click Create Schedule
- Configure:
- Frequency: Weekly, Monthly, Quarterly, Yearly
- Review Period: Days for completion
- Auto-execute: Automatically remove access on completion
- Notifications: Email reminders
- Save the schedule
Reports
Available Report Types
| Report | Description |
|---|---|
| Access Audit | Detailed permission inventory |
| Compliance | Compliance check results |
| Anomaly | Detected anomalies summary |
| Sharing | External sharing analysis |
| External Access | Guest user access report |
Generating a Report
- Navigate to Reports
- Click Generate Report
- Select report type
- Configure parameters:
- Date range
- Filters
- Include options
- Choose format: PDF, XLSX, or CSV
- Click Generate
Downloading Reports
- Wait for report generation to complete
- Click Download next to the report
- Report downloads in selected format
Scheduled Reports
Set up automatic report generation:
- Click Schedule Report
- Configure frequency
- Select recipients
- Reports will be emailed automatically
Settings & Configuration
Profile Settings
Navigate to Settings > Profile to:
- Update display name
- View account email
- See assigned role
Notification Preferences
Configure how you receive alerts:
| Channel | Options |
|---|---|
| On/Off for each alert type | |
| In-App | Desktop notifications |
Microsoft Connection
Manage your Microsoft 365 integration:
- View connection status
- Reconnect if needed
- Disconnect account
Alert Configuration
Create custom alert rules:
- Go to Settings > Alert Configuration
- Click Add Rule
- Configure:
- Name: Rule identifier
- Condition: When to trigger
- Severity: Alert priority
- Notification: How to notify
Troubleshooting
Common Issues
”Microsoft 365 Not Connected”
Problem: Dashboard shows disconnected status.
Solution:
- Go to Settings > Connections
- Click Connect Microsoft 365
- Re-authenticate with admin credentials
- Ensure permissions are granted
”No Events Appearing”
Problem: Activity page shows no events.
Solutions:
- Verify Microsoft 365 is connected
- Check that audit logging is enabled in your Microsoft 365 tenant:
- Go to Microsoft 365 Admin Center
- Navigate to Compliance > Audit
- Ensure auditing is turned on
- Wait 15-30 minutes for initial sync
- Verify the connected account has
AuditLog.Read.AllandActivityFeed.Readpermissions
”Compliance Checks Failing”
Problem: All compliance checks show errors.
Solution:
- Ensure Microsoft connection is active
- Verify admin permissions in Microsoft 365
- Check that the app has
SharePointTenantSettings.ReadWrite.Allpermission - Verify the connected account can access admin settings
”Access Review Not Collecting Permissions”
Problem: Campaign stuck in “Collecting” state.
Solutions:
- Verify
Sites.FullControl.Allpermission is granted - Check that selected sites are accessible
- Review error logs in campaign details
”Permission Removal Not Working”
Problem: Access review decisions to remove permissions are not being executed.
Solutions:
- Verify
Sites.FullControl.AllandSites.Manage.Allpermissions are granted - Check that
GroupMember.ReadWrite.Allis granted for group permission removals - Ensure the app has write access to the affected sites
Getting Help
If you encounter issues not covered here:
- Check the Help section in the application
- Contact your system administrator
- Review application logs for error details
Glossary
| Term | Definition |
|---|---|
| Audit Event | Logged activity from Microsoft 365 |
| Anomaly | ML-detected unusual behavior pattern |
| Campaign | Access review initiative with defined scope |
| Compliance Check | Verification of security configuration |
| CIS Benchmark | Industry standard security guidelines |
| Designated Owner | User responsible for resource permissions |
| Graph API | Microsoft’s API for 365 services |
| Delegated Permission | Permission that acts on behalf of signed-in user |
| Application Permission | Permission that allows app to act independently |
Document Information
| Property | Value |
|---|---|
| Version | 1.0 |
| Last Updated | December 2025 |
| Audience | End Users & Administrators |