7 min readBusinessEarly access

SSO User Management and Enforcement

Manage SSO enforcement, user sync, and access control for your organization

Overview

After configuring SSO, you can manage how users access Revuloop and enforce authentication policies. This guide covers enforcement settings, bulk user synchronization, and access control strategies.

What You'll Learn:

  • How to enforce SSO for your organization
  • Managing grace periods for user transition
  • Bulk importing users from Microsoft Entra
  • Access control with email domain restrictions
  • Monitoring user linkage and adoption

Prerequisites:

  • SSO already configured (see "Setting Up Single Sign-On" guide)
  • Organization owner or admin role
  • Business plan subscription

Understanding SSO Enforcement

Enforcement Modes

Optional SSO (Default):

  • Users can choose between SSO and email/password
  • Flexible for gradual adoption
  • Good for testing and pilot programs

Enforced SSO:

  • Users must authenticate via SSO
  • Email/password login disabled for organization members
  • Enhanced security and centralized control
  • Recommended for full enterprise deployment

Grace Period

A transition period before strict SSO enforcement takes effect:

  • Purpose: Give users time to link their SSO accounts
  • Default: 7 days
  • Range: 0-30 days
  • During grace period: Users can still use email/password
  • After grace period: SSO required, email/password disabled

Configuring Enforcement Settings

Step 1: Review User Linkage Statistics

Before enforcing SSO, check adoption rates:

  1. Navigate to Organization Settings → SSO
  2. Go to Enforcement tab
  3. Review Linkage Statistics panel:
    • Total Users: All users in organization
    • SSO Linked: Users who have linked SSO accounts
    • Unlinked: Users without SSO links
    • Linkage %: Percentage linked

Recommendation: Don't enforce until linkage reaches >90%

Step 2: Set Grace Period

Choose transition timeline:

  1. In Enforcement tab, find Grace Period setting
  2. Enter number of days (0-30)
  3. Consider factors:
    • Organization size: Larger orgs need longer periods
    • Technical proficiency: Less technical users need more time
    • Communication timeline: Align with announcement schedule

Recommended Grace Periods:

  • Small teams (< 20 users): 7 days
  • Medium teams (20-100 users): 14 days
  • Large organizations (100+ users): 21-30 days

Step 3: Configure Email Domains

Restrict SSO to specific email domains:

  1. In Allowed Email Domains section
  2. Click Add Domain
  3. Enter domain (e.g., `@company.com`)
  4. Click Add
  5. Repeat for additional domains

Why Restrict Domains?

  • Prevent unauthorized access
  • Ensure only company emails can use SSO
  • Support for multiple company domains

Example Configuration:

  • `@revuloop.com` (main company domain)
  • `@revuloop.io` (alternative domain)
  • `@contractors.revuloop.com` (contractor emails)

Step 4: Enable SSO Enforcement

When ready to enforce:

  1. Review all settings one final time
  2. Toggle Enforce SSO switch to ON
  3. Confirmation modal appears showing:
    • Enforcement start date
    • Grace period end date
    • Number of unlinked users who will be affected
  4. Click Confirm Enforcement

What Happens Next:

  • Enforcement timestamp recorded
  • Grace period countdown begins
  • Unlinked users see warning banner
  • Email notifications sent to affected users

User Experience During Enforcement

For Linked Users

Before Enforcement:

  • Can use either SSO or email/password
  • No disruption

After Enforcement:

  • Continue using SSO normally
  • No changes to workflow

For Unlinked Users

During Grace Period:

  • Login page shows warning banner:
    • "SSO will be required in X days"
    • "Link your account now"
    • Clear call-to-action button
  • Can still use email/password
  • Encouraged to link SSO account

After Grace Period:

  • Email/password login disabled
  • Must contact admin to:
    • Get SSO account linked, or
    • Receive temporary access while linking

Bulk User Synchronization

Import multiple users from Microsoft Entra directory at once.

Step 1: Access User Sync Panel

  1. Go to Organization Settings → SSO
  2. Select User Sync tab
  3. Click Fetch Users from Directory

What This Does:

  • Queries Microsoft Entra via API
  • Retrieves all users in your tenant
  • Shows users not yet in Revuloop
  • Displays group memberships

Step 2: Review User List

User sync table displays:

Columns:

  • Name: Display name from Azure AD
  • Email: Work email address
  • Groups: Azure AD group memberships
  • Status:
    • "Not in Organization" - Can be imported
    • "Already Member" - Skip, already in Revuloop
    • "Invited" - Pending invitation

Filters:

  • Search by name or email
  • Filter by group membership
  • Filter by status

Step 3: Select Users to Import

Individual Selection:

  1. Check boxes next to users to import
  2. Review each user's groups and details

Bulk Selection:

  1. Check "Select All" box
  2. Or filter by group and select all in group
  3. Exclude already-members automatically

Filter Strategies:

  • By Department: Select all users in "Engineering" group
  • By Role: Import all "Manager" group members
  • By Location: Sync all "US Office" users

Step 4: Assign Roles

For each selected user (or in bulk):

Role Options:

  • Owner: Full organization control (limit to 1-2 people)
  • Admin: Team management, survey access, settings
  • Member: Survey creation, basic features (most common)
  • Viewer: View-only access, no editing

Bulk Role Assignment:

  1. Select multiple users
  2. Choose Bulk Actions dropdown
  3. Select Assign Role
  4. Choose role
  5. Click Apply

Step 5: Import Users

  1. Review selected users and roles
  2. Click Import X Users button
  3. Import process begins:
    • Creates user accounts in Revuloop
    • Links SSO automatically
    • Assigns to departments (based on group mappings)
    • Sets specified roles
    • Sends invitation emails

Step 6: Review Import Results

After import completes:

Success Summary:

  • Number of users imported
  • Number of SSO links created
  • Number of department assignments

Failed Imports:

  • User email (with reason for failure)
  • Common reasons:
    • Email already exists
    • Invalid email format
    • Seat limit reached
    • Missing required fields

Next Steps:

  • Review failed imports
  • Resolve issues
  • Retry failed imports individually

Just-In-Time (JIT) Provisioning

Automatic account creation when users first sign in via SSO.

How JIT Works

First SSO Login:

  1. User clicks "Sign in with Microsoft"
  2. Authenticates with Azure AD
  3. If user doesn't exist in Revuloop:
    • Account created automatically
    • Profile populated (name, email from SSO)
    • Added to organization
    • Default role assigned
    • SSO link established
  4. User redirected to Revuloop dashboard

Configuring JIT

  1. Go to SSO Settings → Configuration tab
  2. Find JIT Provisioning section
  3. Configure settings:
    • Enable JIT: Toggle on/off
    • Default Role: Role assigned to new users (recommend: Member)
    • Default Department: Optional department assignment
    • Auto-Approve: Skip manual approval step

JIT Best Practices

Security:

  • Set conservative default role (Member or Viewer)
  • Use with email domain restrictions
  • Monitor JIT provisioning logs
  • Review new users regularly

User Experience:

  • Communicate JIT to team (they won't need invitations)
  • Set clear default role expectations
  • Provide onboarding for JIT users
  • Have support ready for first-time users

Access Control Strategies

Email Domain Restrictions

Control which email addresses can use SSO:

Configuration:

  1. Enforcement tab → Allowed Email Domains
  2. Add company domains
  3. Block personal emails (gmail.com, yahoo.com, etc.)

Use Cases:

  • Corporate emails only: Only `@company.com`
  • Multiple subsidiaries: `@company.com`, `@subsidiary.com`
  • Contractors separate: Different domains with different policies

Benefits:

  • Prevent unauthorized SSO access
  • Enforce corporate email policy
  • Support organizational structure

Azure AD Group-Based Access

Control SSO access via Azure AD groups:

Setup:

  1. In Azure Portal, go to Enterprise Application → Revuloop
  2. Select Users and groups
  3. Create assignment requirement:
    • PropertiesUser assignment required? → Yes
  4. Add groups that should have access
  5. Users not in assigned groups cannot SSO

Benefits:

  • Centralized access control in Azure AD
  • Easy bulk access changes
  • Aligns with existing group structure
  • Automatic access revocation when removed from group

Role-Based Access

Assign appropriate roles during import or JIT:

Role Guidelines:

  • Owners: C-suite, IT admins (1-2 per org)
  • Admins: Department heads, team leads (5-10% of users)
  • Members: Individual contributors (80-90% of users)
  • Viewers: External stakeholders, clients (as needed)

Review Cadence:

  • Monthly: Review new user roles
  • Quarterly: Audit all user roles
  • Annually: Comprehensive access review

Monitoring and Auditing

SSO Login Activity

Track authentication events:

  1. Go to Organization Settings → Audit Logs
  2. Filter by Event Type: "SSO Authentication"
  3. View details:
    • Timestamp
    • User email
    • Success/Failure status
    • IP address
    • Location (approximate)
    • Device/browser

Red Flags:

  • Multiple failed attempts from single user
  • Logins from unusual locations
  • After-hours access (if unusual for your org)
  • Multiple concurrent sessions

User Linkage Monitoring

Track SSO adoption over time:

Metrics to Monitor:

  • Linkage rate percentage
  • Number of unlinked users (should decrease)
  • Time to link (after invitation or JIT)
  • Grace period compliance

Dashboards:

  1. SSO Settings → Enforcement tab
  2. View Linkage Statistics panel
  3. Track trend over time

Security Alerts

Set up automatic alerts:

Alert Types:

  • Failed SSO attempts (5+ in 1 hour)
  • New user JIT provisioning
  • SSO link created/removed
  • Enforcement status changes
  • Group mapping updates

Configuration:

  1. Organization Settings → Notifications
  2. Enable SSO Security Alerts
  3. Choose notification channels (email, Slack)
  4. Set alert thresholds

Common Use Cases

Use Case 1: Company-Wide SSO Rollout

Scenario: 100-person organization enabling SSO for first time

Implementation Plan:

Week 1: Setup

  • Configure Microsoft Entra app
  • Configure Revuloop SSO
  • Test with 2-3 admin users

Week 2: Pilot

  • Invite 10 users from different departments
  • Gather feedback
  • Refine group mappings

Week 3: Bulk Import

  • Import all users from directory
  • Send organization-wide announcement
  • Provide documentation

Week 4: Grace Period

  • Enable enforcement with 14-day grace period
  • Send reminders at Day 1, 7, 12
  • Offer support sessions

Week 6: Full Enforcement

  • Grace period ends
  • SSO fully enforced
  • Monitor and support

Use Case 2: Mixed Workforce (Employees + Contractors)

Scenario: Company has full-time employees and contractors

Configuration Strategy:

Employees (`@company.com`):

  • SSO enforced
  • JIT enabled
  • Auto-assigned to departments via groups
  • Member role by default

Contractors (`@contractor.com` or various emails):

  • SSO optional
  • Email/password allowed
  • Manual invitation only
  • Viewer role by default
  • Limited access

Implementation:

  1. Set allowed domain to `@company.com` only
  2. Enable enforcement for company domain
  3. Invite contractors manually with email/password

Use Case 3: Phased Rollout by Department

Scenario: Large organization, wants gradual rollout

Phase Plan:

Phase 1: IT Department (Week 1-2)

  • Import IT team
  • Enable SSO (optional)
  • Gather feedback

Phase 2: Engineering (Week 3-4)

  • Import engineering team
  • Configure engineering group mappings
  • Monitor adoption

Phase 3: All Other Departments (Week 5-8)

  • Bulk import remaining users
  • Department-specific communication
  • Rolling enforcement with grace periods

Phase 4: Full Enforcement (Week 9+)

  • Enable org-wide enforcement
  • Final grace period
  • Full SSO required

Tips and Best Practices

Communication Strategy

Before Enforcement:

  • Announce SSO 2-4 weeks in advance
  • Explain benefits clearly
  • Provide step-by-step linking instructions
  • Offer support channels

During Grace Period:

  • Send regular reminders (weekly)
  • Highlight approaching deadline
  • Show linkage progress to create urgency
  • Celebrate departments reaching 100% linkage

After Enforcement:

  • Announce successful rollout
  • Thank team for cooperation
  • Share support resources
  • Monitor for issues

Transition Planning

Timeline Best Practices:

  • Allow generous grace period initially (14-30 days)
  • Monitor linkage rate daily
  • Be ready to extend if needed (<80% linked)
  • Provide escape hatches for critical situations

Support Preparation:

  • Train support team on SSO troubleshooting
  • Create FAQ document
  • Set up dedicated support channel (Slack, Teams)
  • Have admin availability for quick unlocking

Security Considerations

Regular Reviews:

  • Weekly: SSO login logs
  • Monthly: User access and roles
  • Quarterly: Group mappings and department assignments
  • Annually: Comprehensive security audit

Credential Management:

  • Rotate client secrets every 6-12 months
  • Monitor for expiring secrets (alert 30 days before)
  • Document secret rotation process
  • Store secrets in secure vault

Troubleshooting

Issue: Low Linkage Rate

Symptoms: <50% users linked after 1 week

Common Causes:

  • Users didn't see announcement
  • Instructions unclear
  • Technical issues linking accounts
  • Users waiting until last minute

Solutions:

  1. Send targeted email to unlinked users
  2. Offer 1-on-1 support sessions
  3. Create video walkthrough
  4. Extend grace period if needed
  5. Check if emails being spam-filtered

Issue: Bulk Import Failed

Symptoms: Import completed but many users failed

Common Causes:

  • Seat limit reached on plan
  • Email domains not allowed
  • Duplicate email addresses
  • Missing required API permissions

Solutions:

  1. Check organization seat limit
  2. Verify allowed email domains include all user domains
  3. Review existing members for duplicates
  4. Verify `User.Read.All` permission in Azure
  5. Try importing failed users individually for specific errors

Issue: User Locked Out After Enforcement

Symptoms: User can't login, grace period ended, account not linked

Immediate Fix:

  1. Admin temporarily disables enforcement
  2. User logs in with email/password
  3. User links SSO account
  4. Admin re-enables enforcement

Or:

  1. Admin creates SSO link manually
  2. Sends user new credentials
  3. User logs in via SSO

Prevention:

  • Better communication during grace period
  • Multiple reminders
  • Support channels clearly advertised

Issue: Group Mappings Not Working

Symptoms: Users imported but wrong department or no department

Debugging:

  1. Verify user's Azure AD group membership
  2. Check group mapping exists for that group
  3. Ensure Auto Sync enabled on mapping
  4. Manually trigger sync: User SyncSync Users
  5. Check sync status logs for errors

Common Fixes:

  • Re-fetch groups from Azure
  • Recreate group mapping
  • Verify `Group.Read.All` permission
  • Check department exists in Revuloop

Ongoing maintenance

After configuring enforcement and user management:

  • Monitor adoption metrics regularly
  • Review audit logs for security
  • Optimize group mappings based on org changes
  • Plan for maintenance (secret rotation, reviews)
  • Gather user feedback to improve experience

Still need help?

Our support team typically responds within 24 hours