Overview
Learning Management System (LMS) integrations often require mapping users between your Identity Provider (IdP) and the LMS platform. This mapping is typically achieved through a custom SSO attribute calledlms_user_id that contains the user’s identifier in the target LMS system.
This document provides an overview of the concepts and links to specific Identity Provider configuration guides.
Key Concepts
User Identity Mapping
When a user logs into an LMS through SSO, the system needs to:- Authenticate the user through your Identity Provider
- Receive user attributes in the SAML assertion or OIDC claims
- Map the user to an existing LMS account using the
lms_user_idattribute - Grant access to the appropriate LMS resources
Common User ID Patterns
Different LMS platforms expect different identifier formats:| ID Type | Description | Example | Common LMS Platforms |
|---|---|---|---|
| Email Address | User’s email address | john.doe@company.edu | Blackboard, some Canvas instances |
| Employee ID | Numeric employee identifier | 123456 | Cornerstone, Docebo, Workday Learning |
| Student ID | Academic student identifier | STU789123 | Canvas, Moodle (academic) |
| Username | Login username | jdoe | Moodle, custom LMS platforms |
| External ID | External system identifier | EXT_ABC123 | Multi-system integrations |
SSO Protocols
Most LMS integrations use one of two SSO protocols: SAML 2.0 (Recommended)- More secure for enterprise environments
- Better support for custom attributes
- Standard protocol across most enterprise IdPs
- Modern OAuth 2.0-based protocol
- Good for cloud-native applications
- Flexible claim structure
Identity Provider Configuration Guides
Choose your Identity Provider for detailed configuration instructions:Enterprise Identity Providers
Other Popular Identity Providers
If your Identity Provider isn’t listed above, the general principles remain the same:- Create/configure a SAML application or OIDC client
- Add custom attributes or claims for
lms_user_id - Map user attributes to the LMS identifier
- Test the configuration with sample users
- Deploy to production with proper access controls
Planning Your Implementation
Step 1: Identify LMS User Identifiers
Before configuring your IdP, determine:- What identifier format does your LMS use?
- Where is this identifier stored in your user directory?
- Is the identifier unique across all users?
- Does it change over time (avoid changing identifiers)?
Step 2: Choose User Attribute Source
Common sources forlms_user_id:
Existing Attributes:
- Employee ID (for staff/faculty)
- Student ID (for academic institutions)
- Email address (universal but may change)
- Username (if stable and unique)
- LMS-specific identifiers
- External system IDs
- Composite identifiers
Step 3: Configure Identity Provider
Follow the appropriate guide above to:- Set up the SSO application
- Configure custom attributes/claims
- Map to your chosen user identifier
- Set up user access and permissions
Step 4: Test Configuration
Always test your configuration:- Validate SSO response contains the correct
lms_user_id - Test user mapping in the LMS
- Verify edge cases (new users, missing attributes, etc.)
- Check error handling for failed mappings
Security Considerations
Attribute Security
- Minimize sensitive data in SSO attributes
- Use stable identifiers that don’t change frequently
- Encrypt assertions when possible (SAML)
- Validate user input before using in attributes
Access Control
- Limit application access to authorized users only
- Use organizational units or groups to control access
- Implement conditional access policies where supported
- Monitor authentication events regularly
Data Privacy
- Only include necessary attributes in SSO responses
- Follow data protection regulations (GDPR, CCPA, etc.)
- Document attribute usage and retention policies
- Provide user transparency about data sharing
Common Implementation Scenarios
Scenario 1: University Environment
Users: Students, Faculty, Staff Identifier: Student ID for students, Employee ID for staff Implementation:- Use organizational units or groups to differentiate user types
- Map different attributes based on user type
- Include role/group information in SSO response
Scenario 2: Corporate Training
Users: All employees Identifier: Employee ID Implementation:- Single attribute mapping for all users
- Include department/role information
- Sync with HR systems for user lifecycle management
Scenario 3: Multi-Tenant SaaS
Users: Multiple customer organizations Identifier: Tenant-specific user ID Implementation:- Include tenant information in attributes
- Use composite identifiers (tenant + user ID)
- Separate SSO applications per tenant if needed
Troubleshooting Common Issues
User Not Found in LMS
Causes:lms_user_iddoesn’t match LMS user identifier- Case sensitivity issues
- User doesn’t exist in LMS yet
- Identifier format mismatch
- Verify identifier format and case
- Check LMS user provisioning
- Review attribute mapping configuration
- Test with known working users
Custom Attribute Not Appearing
Causes:- User doesn’t have the attribute populated
- Incorrect attribute mapping
- IdP configuration issues
- SSO application not assigned to user
- Verify user attribute data
- Check IdP attribute mapping
- Review application assignments
- Test SSO response directly
Authentication Failures
Causes:- Incorrect SSO URLs or certificates
- SAML configuration mismatch
- Token/assertion format issues
- Network or firewall blocks
- Verify SSO configuration details
- Check certificate validity
- Review error messages and logs
- Test network connectivity
Best Practices
Configuration Management
- Use version control for IdP configurations when possible
- Document attribute mappings and business logic
- Maintain staging environments for testing
- Plan for disaster recovery and backup configurations
User Experience
- Provide clear error messages for failed logins
- Offer alternative authentication methods as fallback
- Test user journeys regularly
- Monitor authentication performance
Maintenance
- Regularly review user attributes for accuracy
- Monitor for deprecated features in your IdP
- Update certificates before expiration
- Review access permissions periodically
Congratulations, you’re all set! If you face any issues with the steps mentioned above, please contact us by emailing integrations@stackone.com. We’re always here to assist you!
Next Steps
- Choose your Identity Provider from the guides above
- Review your LMS documentation for specific requirements
- Plan your user attribute mapping strategy
- Configure and test in a development environment
- Deploy to production with proper monitoring