
ืฉืคื ๐ฎ๐ฑ ืขืืจืืช
ืืกืืืืช
ืชืฆืืจื
ื ืืืื ืืฉืชืืฉืื
ืคืชืจืื ืืขืืืช
ืืชืงืื
FastComments ืชืืื ืืืืืืช SAML 2.0 ืขืืืจ ืืงืืืืช ืืชืืื ืืืช Flex ื-Pro. SAML ืืืคืฉืจ ืืืืืช ืื ืืกื ืืืืื (SSO) ืืจื ืกืคืง ืืืืืช ืฉื ืืืจืืื ืฉืืื, ืืืืคืฉืจ ืืืฉืชืืฉืื ืืืฉืช ื-FastComments ืืืืฆืขืืช ืืืืฉืืจืื ืืชืืืืืืื ืืงืืืืื ืฉืืื. ืืืจืื ืื ืืืกื ืืืืจื, ืชืฆืืจื ืืคืชืจืื ืืขืืืช ืฉื ืืืืืช SAML.
ืื ืื SAML? 
SAML (Security Assertion Markup Language) ืืื ืชืงื ืคืชืื ืืืืืกืก ืขื XML ืืืืืคืช ื ืชืื ื ืืืืืช ืืืจืฉืื ืืื ืืืจืืื, ืืืืืื ืืื ืกืคืง ืืืืช (IdP) ืืืื ืกืคืง ืฉืืจืืช (SP).
ืืืฆื SAML ืขืืื
SAML ืืืคืฉืจ ืื ืืกื ืืืืื (SSO) ืขื ืืื ืื ืฉืืฉืชืืฉืื ืืืืชืื ืขืฆืื ืคืขื ืืืช ืืื ืกืคืง ืืืืืช ืฉืืื ืืื ื ืืืฉืื ืืืกืคืจ ืืืฉืืืื ืืื ืืื ืช ืคืจืื ืืื ืืกื ืฉืื. ืืืฉืจ ืืฉืชืืฉ ืื ืกื ืืืฉืช ื-FastComments:
- ืืงืฉืช ืืืืืช: FastComments ืืคื ื ืืช ืืืฉืชืืฉ ืืกืคืง ืืืืืช ืฉืื
- ืืืืืช ืืฉืชืืฉ: ืืืฉืชืืฉ ืืืืช ืืช ืืืืชื ืืฆื ื-IdP ืฉืื (ืืืฉื, Active Directory, Okta, Azure AD)
- ืชืืืื ืฉื SAML: ื-IdP ืฉืืื ืืฆืืจืช SAML ืืชืืื ืืืจื ื-FastComments
- ืืืฉื ืืืฉืชืืฉ: FastComments ืืืืชืช ืืช ืืืฆืืจื ืืืขื ืืงื ืืืฉื ืืืฉืชืืฉ ืืืืืืช
ืืชืจืื ืืช ืฉื SAML
- ืืืืื ืืืืืจืช: ืืืืืช ืืจืืื ืืฆืืฆื ืกืืืื ืื ืืงืฉืืจืื ืืกืืกืืืืช
- ืฉืืคืืจ ืืืืืืช ืืืฉืชืืฉ: ืืฉืชืืฉืื ื ืื ืกืื ืคืขื ืืืช ืื ืืืฉืื ืืืกืคืจ ืืืฉืืืื ืืฆืืจื ืืืงื
- ืฆืืืช (Compliance): ืืกืืืข ืืขืืื ืืืจืืฉืืช ืจืืืืืืจืืืช ืืืงืจืช ืืืฉื ืืืืื ื ืืืงืืจืช
- ืืงืจืช ื ืืืื: ืื ืืื ื-IT ืฉืืืจืื ืขื ื ืืืื ืืฉืชืืฉืื ืืจืืื
ืชืืืื ื-SAML 2.0
FastComments ืืืืฉืืช ืืช SAML 2.0, ืืืจืกื ืื ืคืืฆื ืืืืชืจ ืฉื ืชืงื SAML. ืืืืฉืื ืฉืื ื ืชืืื ื:
- ืงืืฉืืจื HTTP-POST ื-HTTP-Redirect
- ืชืืืืืช ืืืฆืืจืืช SAML ืืชืืืืช
- ืืฆืืจืืช ืืืฆืคื ืืช (ืืืคืฆืืื ืื)
- ืืกืคืจ ืืืืืจืืชืื ืืชืืื ื-digest
- ืคืืจืืืื ืฉืื ืื ืฉื ืืืื ืฉื
SAML ืืขืืืช SSO 
FastComments ืืฆืืขื ืื SSO ืืื ืืืืืช SAML. ืืื ื ืฉื ืืืืืืื ืขืืืจืช ืืื ืืืืืจ ืืช ืืืืฉื ืื ืืื ื ืืืจืืื ืฉืืื.
SSO ืคืฉืื/ืืืืืื
FastComments ืืฆืืขื ืฉื ื ืืจืื SSO ืฉืื ืื ืืืืืืช ืืชืื ืืืืื'ื ืืชืืืืืช ืืจื ืืืชืจ ืฉืืื. ืื ืฉืื ื ืโSAML, ืืื ืืืจืฉ SAML. ืืืงืื ืืืช, Simple SSO ืืืจืฉ ืคืฉืื ืืขืืจืช ืืืืืืงื ืื ืืืืื'ื ืืชืืืืืช, ืืขืื Secure SSO ืขืืฉื ืืืช ืื ืืกืฃ ืืื ืฉืืืฉืืช ืืช ืืืืขื ืืืืฆืขืืช ืืคืชื API.
SAML, ืืขืืืช ืืืช, ืืืืช ืืช ืืืฉืชืืฉ ืืื ืืืืฆืจ (ืืืชืืกืก ืขื ืืืจืฉืืืช ืฉืื) ืืื ืื ืืช ืืืืื'ื ืืชืืืืืช (ืื ืืฉ ืืื ืขืืืืืช ืฆื ืฉืืืฉื ืืืคืขืืืช ืขืืืจ ืืืืืืื ืฉืื ื).
ืืืืืช SAML
SAML ืืื ืคืจืืืืงืื ืืืืืช ืืจืืช ืืจืืื ืืช ืฉืืกืคืง ืืืืืืช ืืืืื ืืฉืืืื ืืืงืืช ืืืชืจ:
- Implementation: ืืืจืฉ ืชืฆืืจืช ืกืคืง ืืืืช (IdP) ืืืืืคืช ืชืขืืืืช
- Security: ืืฉืชืืฉ ืืืฆืืจืืช XML ืืชืืืืช ืืชืืื ืืืฆืคื ื
- Use Case: ืืืืืืื ืขืืืจ ืืจืืื ืื ืขื ืชืฉืชืืช SAML ืงืืืืช (Active Directory, Okta, ืืื')
- Setup Complexity: ืืืชืจ ืืขืืจื - ืืืจืฉ ืชืฆืืจืช IdP ืื ืืืื ืชืขืืืืช
- Enterprise Features: ืืืคืื ืชืคืงืืืื ืืชืงืื, ื ืืืื ืืฉืชืืฉืื ืืจืืื, ืฉืืืจืช ืจืืฉืืื ืืืงืืจืช
ืืชื ืืืืืจ ืโSAML
ืฉืงืื ืืืืืช SAML ืื ืืืจืืื ืฉืืื:
- ืืืจ ืืฉืชืืฉ ืืกืคืง ืืืืช ืืชืืื ืโSAML (Okta, Azure AD, ADFS, ืืื')
- ืืืจืฉ ืืืืื ืืขืืืื ืืจืืืืฆืื ืืจืืช ืืจืืื ืืช
- ืฆืจืื ื ืืืื ืืฉืชืืฉืื ืืจืืื ืืฉืืืื ืืืืฉื
- ืืฉ ืื ืืกืคืจ ืืคืืืงืฆืืืช ืืืฉืชืืฉืืช ืโSAML ืืืืืืช
- ืืืจืฉ ืจืืฉืืื ืืืงืืจืช ืืคืืจืืื ืืืืืืช ืืืืื
ืืชื ืืืืืจ ืโSSO ืคืฉืื ืื ืืืืืื
ืคืชืจืื ืืช SSO ืืืืืงืืื ืืืืืื'ื ืฉืื ื ืขืฉืืืื ืืืกืคืืง ืื ืืชื:
- ืืืืืงืื ืืืขืจืืช ืืืืืช ืืืชืืืช ืืืฉืืช
- ืฆืจืืืื ืืืฉืื ืืืืจ ืขื ืืืืจื ืืื ืืืืืช
- ืื ืืงืืงืื ืืฉืืืื ืขื ืกืคืง ืืืืช ืืจืืื ื
- ืจืืฆืื ืืฉืืื ืื ืชืื ื ืืืฉืชืืฉ ืืฉืืจืืช ืืืืคืืืงืฆืื ืฉืืื
- ืืฉ ืืื ืืจืืฉืืช ืืืืื ืคืฉืืืืช ืืืชืจ
Simple ืโSecure SSO ืืฉืืฉืื ืืืจื ืืื ืขืืืจ ืคืืจืืืื ืืงืืื ืื, ืืืืืื, ืืื', ืฉืืื ืืืฉืชืืฉ ืืืจ ืืฉ ืืฉืืื ืืจื ืืืชืจ ืื ืืืคืืืงืฆืื ืฉืืื ืืื ืืื ืื ืืืืจื ืืฉืชืืฉ ืโSAML.
ืืืืจืช SAML 
ืืืืจืช ืืืืืช SAML ืโFastComments ืืืจืฉืช ืื ืชืฆืืจื ืืืื ืื ืืืื ืฉืื ืืื ืืืืจืืช ืืฆื ืกืคืง ืืืืืช ืฉืื.
ืืจืืฉืืช ืืืงืืืืช
ืืคื ื ืชืฆืืจืช SAML, ืืื ืฉืืฉ ืื:
- ืชืืื ืืช FastComments Flex ืื Pro (SAML ืืื ื ืืืื ืืชืืื ืืช Creators)
- ืืืฉื ืื ืืืืช ืืืฉืืื ืโFastComments ืฉืื
- ืืืฉื ืื ืืืืช ืืฆื ืกืคืง ืืืืืช ืฉืื
- ืืืโื ืชืื ื SAML ืฉื ืโIdP ืฉืื ืื ืืืืข ืขื ืืชืขืืื ืฉืื
ืืืฉื ืืชืฆืืจืช SAML
- ืืืื ืก/ื ืืืื ืื ืืืื ืฉื FastComments
- ืขืืืจ ืื API/SSO Settings ืืกืจืื ืืฆื ืืฉืืืื
- ืืืฅ/ื ืขื ืืคืชืืจ SAML Config
ืื ืืื ื ืจืืื ืืช ืืคืชืืจ ืโSAML Config, ืืืช ืื:
- ืืืฉืืื ื ืืฉ ืืช ืืืืืื ืื ืืจืฉืช (Flex ืื Pro)
- ืืฉ ืื ืืจืฉืืืช ืื ืื
- ืืืฉืชืืฉ ืฉืื ืืฉ ืชืคืงืืื API Admin ืื Admin Admin
ืชืฆืืจืช SAML ืืกืืกืืช
ืืคืขืืช ืืืืืช SAML
- ืกืื/ื ืืช ืืชืืื Enable SAML Authentication
- ืคืขืืื ืื ืืคืขืืื ืืช SAML ืขืืืจ ืืฉืืืจ ืฉืื ืืืฆืืื ืืช ืฉืืืช ืืชืฆืืจื
ืฉืืืช ืืืื
IdP Single Sign-On URL (Required)
- ืโURL ืฉืืืื ืืืฉืชืืฉืื ืืืคื ื ืืืืืืช
- ืืืจื ืืื ืืกืืคืง ืขืโืืื ืกืคืง ืืืืืช ืฉืื
- ืืืืื:
https://your-company.okta.com/app/fastcomments/sso/saml
IdP X.509 Certificate (Required)
- ืืชืขืืื ืืฆืืืืจืืช ืืกืคืง ืืืืืช ืฉืื
- ืืฉืืฉืช ืืืืืืช ืืืืชื ืืืืช ืฉื ืชืืืืืช SAML
- ืืืืืช ืืืืื ืืช ืืชืขืืื ืืืืื ืขื ืกืืื ื BEGIN/END
- ืคืืจืื ืืืืืื: ```
- ----BEGIN CERTIFICATE----- MIICXjCCAcegAwIBAgIBADANBgkqhkiG9w0BAQsFADA...
- ----END CERTIFICATE-----
ืฉืืืช ืืืคืฆืืื ืืืื
IdP Entity ID / Issuer
- ืืืื ืืช ืกืคืง ืืืืืช ืฉืื
- ืื ื ืฉืืจ ืจืืง, ืืจืืจืช ืืืืื ืืื ืโURL ืฉื FastComments ืฉืื
- ืฆืจืื ืืืชืืื ืโissuer ืืืืืืจ ืโIdP ืฉืื
ืชืฆืืจื ืืชืงืืืช
ืืืืจืืช ืืืืื
Signature Algorithm
- ืืจืืจืช ืืืื SHA-256 (ืืืืืฅ)
- ืืคืฉืจืืืืช: SHA-1, SHA-256, SHA-512
- ืฆืจืื ืืืชืืื ืืืืืจืืช ืโIdP ืฉืื
Digest Algorithm
- ืืจืืจืช ืืืื SHA-256 (ืืืืืฅ)
- ืืฉืืฉ ืืืืฉืื digest ืืชืืืืืช SAML
- ืฆืจืื ืืืชืืื ืืืืืจืืช ืโIdP ืฉืื
Name ID Format
- ืืจืืจืช ืืืื: ืคืืจืื ืืชืืืช ืืืืืื
- ืงืืืข ืืืฆื ืืืื ืืฉืชืืฉืื ืืขืืฆืืื
- ืืคืฉืจืืืืช ื ืคืืฆืืช: Email Address, Persistent, Transient
ืืฆืคื ื (ืืืคืฆืืื ืื)
Private Key for Decryption
- ื ืืจืฉ ืจืง ืื ืโIdP ืฉืื ืืืฆืคื ืืช ืืืฆืืจืืช (assertions) ืฉื SAML
- ืืืืง/ื ืืื ืืช ืืืคืชื ืืคืจืื ืืืฉืืฉ ืืคืขื ืื
- ืืจืื ืืคืจืืกืืช ืืื ืฆืืจื ืืืฆืคื ืช ืโassertion
ืฉืืืจืช ืืชืฆืืจื
- ืกืงืืจ/ื ืืช ืื ืืืืืจืืช ืืืืื ืฉืื ื ืืื ืืช
- ืืืฅ/ื ืขื Save SAML Configuration
- ืืืขืจืืช ืชืืฆืข ืืืืืช ืฉื ืืชืฆืืจื ืฉืื
- ืื ืืืืืืช ืืฆืืื, ืชืจืื/ื ืืืืขืช ืืืฉืืจ
ืฉืืืื ืืืืื
ืืืืจ ืฉืืืจืช ืชืฆืืจืช SAML ืฉื FastComments ืฉืื:
- ืืืืจ/ื ืืช ืกืคืง ืืืืืช ืฉืื ืืืืฆืขืืช ืืืืืข ืฉื ืโService Provider
- ืืืืง/ื ืืช ืืืื ืืืืืืช
- ืงืืข/ื ืชืคืงืืื ืืฉืชืืฉ ืืืจืฉืืืช ืืคื ืืฆืืจื
ืืืืข ืโService Provider ืืืจืืฉ ืืืืืจืช ืโIdP ืฉืื ืืืฆื ืืจืืข ืฉโSAML ืืืคืขื.
ืชืฆืืจืช ืกืคืง ืืืืช 
After configuring SAML in FastComments, you need to set up FastComments as a Service Provider in your identity provider.
General IdP Configuration
Most identity providers require the following information to add FastComments as a SAML application:
Required Service Provider Information
These values are automatically generated and displayed in your FastComments SAML configuration page:
SP Entity ID / Audience
- Format:
https://fastcomments.com/saml/{your-tenant-id} - This uniquely identifies your FastComments instance
Assertion Consumer Service (ACS) URL
- Format:
https://fastcomments.com/saml/callback/{your-tenant-id} - Where your IdP sends SAML responses after authentication
SP Metadata URL (if supported by your IdP)
- Format:
https://fastcomments.com/saml/metadata/{your-tenant-id} - Provides complete SAML configuration in XML format
SAML Login URL
- Format:
https://fastcomments.com/saml/login/{your-tenant-id} - Direct link to initiate SAML authentication
Required SAML Attributes
Configure your identity provider to send these attributes with SAML responses:
Essential Attributes
Email Address (Required)
- Attribute Name:
email,emailAddress, orhttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress - Purpose: Unique user identification and notifications
- Format: Valid email address
Optional Attributes
First Name
- Attribute Names:
firstName,givenName, orhttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname - Purpose: User display name
Last Name
- Attribute Names:
lastName,surname, orhttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname - Purpose: User display name
Roles (Important for access control)
- Attribute Names:
roles,groups,memberOf, or custom attribute names - Purpose: FastComments role assignment and permissions
- Format: Array of role strings or comma-separated values
Common Identity Provider Configurations
Microsoft Azure AD
Add Enterprise Application
- Search for "FastComments" or create a custom SAML application
- Use the SP information provided by FastComments
Configure Attributes
- Email:
user.mailoruser.userprincipalname - First Name:
user.givenname - Last Name:
user.surname - Roles:
user.assignedrolesor directory groups
- Email:
Okta
Create SAML Application
- Use "Create New App" and select SAML 2.0
- Configure with FastComments SP information
Attribute Statements
- Email:
user.email - FirstName:
user.firstName - LastName:
user.lastName - Roles:
user.groupsor custom attributes
- Email:
Google Workspace
Add SAML Application
- Go to Apps > Web and mobile apps > Add App > Add custom SAML app
- Configure with FastComments SP information
Attribute Mapping
- Email: Primary email
- First Name: First name
- Last Name: Last name
- Roles: Groups or custom attributes
Active Directory Federation Services (ADFS)
Add Relying Party Trust
- Use the FastComments metadata URL or manual configuration
- Configure SP information as provided
Claim Rules
- Email: Email Address claim
- Name: Name ID claim
- Roles: Group membership or custom claims
Attribute Name Flexibility
FastComments accepts role information from multiple attribute names to accommodate different IdP configurations:
rolesgroupsmemberOfrolegrouphttp://schemas.microsoft.com/ws/2008/06/identity/claims/rolehttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/role
This flexibility ensures compatibility with various identity providers without requiring specific attribute naming conventions.
Testing Your Configuration
After configuring your identity provider:
- Save the IdP configuration
- Test with a dedicated test user account
- Verify that attributes are being sent correctly
- Check that roles are properly mapped
- Ensure the authentication flow completes successfully
Most identity providers offer SAML testing tools to validate the configuration before deploying to production users.
ืืืืข ืขื ืกืคืง ืืฉืืจืืช 
ืืืฉืจ SAML ืืืคืขื ื-FastComments, ืืืขืจืืช ืืืฆืจืช ืืืืืืืืช ืืืืข ืฉื ืกืคืง ืฉืืจืืช (SP) ืฉืขืืื ืืืืืืจ ืืกืคืง ืืืืืช ืฉืื.
ืืืฉื ืืืืืข ืฉื ืกืคืง ืืฉืืจืืช
ืืืืข ื-SP ืืืฆื ืืขืืื ืืชืฆืืจื ืฉื SAML ืืืืจ ืืคืขืืช ืืืืืช SAML. ืืืืข ืื ืืืื ืืช ืื ืืคืจืืื ืฉืกืคืง ืืืืืช ืฉืื ืฆืจืื ืืื ืืืงืื ืืช ืืืก ืืืืื ื-SAML.
ื ืงืืืืช ืงืฆื ืฉื ืกืคืง ืืฉืืจืืช
SP Entity ID / Audience
ืืืจื: ืืืื ืืืืคื ืืืืืื ืืช ืืืคืข FastComments ืฉืื ืืกืคืง ืฉืืจืืช
ืคืืจืื: https://fastcomments.com/saml/{your-tenant-id}
ืฉืืืืฉ: ืืืืจ ืืืช ื-Entity ID ืื Audience ื-IdP ืฉืื
ืืืื ืื ืืืืื ืฉืชืฉืืืืช SAML ืืืืขืืืช ืืฉืืืจ FastComments ืืกืคืฆืืคื ืฉืื ืืืื ืข ืงืืืช ืชืฉืืืืช SAML ืขื ืืื ืืืคืขืื ืืืจืื.
Assertion Consumer Service (ACS) URL
ืืืจื: ื ืงืืืช ืืงืฆื ืฉืืืื ืกืคืง ืืืืืช (IdP) ืฉืืื ืชืฉืืืืช SAML ืืืืจ ืืืืืช ืืืฉืชืืฉ
ืคืืจืื: https://fastcomments.com/saml/callback/{your-tenant-id}
ืฉืืืืฉ: ืืืืจ ืืืช ื-ACS URL ืื Reply URL ื-IdP ืฉืื
ืื ืืืงืื ืฉืืืื ืืืฉืชืืฉืื ืืืขืืจืื ืืืืจ ืืืืืช ืืืฆืื ืขื ืกืคืง ืืืืืช ืฉืื, ืืื ืขื ื-SAML assertion ืืืืื ืืืืข ืขื ืืืฉืชืืฉ.
SP Metadata URL
ืืืจื: ืืกืคืง ืชืฆืืจืช SAML ืืืื ืืคืืจืื XML ืกืื ืืจืื
ืคืืจืื: https://fastcomments.com/saml/metadata/{your-tenant-id}
ืฉืืืืฉ: ืืืง ืืกืคืงื ืืืืืช ืืืืืื ืืืืื ืืืืืืืืช ืืช ืืชืฆืืจื ืืืืฆืขืืช ืืชืืืช URL ืื
ืืชืืืช ืืืื-ืืื ืืืืื ืืช ืื ืืืืืข ืื ืืืฅ ืฉื ื-SP ืืคืืจืื XML, ืื ืฉืืงื ืขื ืชืฆืืจืช ืกืคืงื ืืืืช ืชืืืืื ืืืืคื ืืืืืืื.
SAML Login URL
ืืืจื: ืงืืฉืืจ ืืฉืืจ ืืืชืืืช ืืืืืช SAML ืขืืืจ ืืฉืืืจ ืฉืื
ืคืืจืื: https://fastcomments.com/saml/login/{your-tenant-id}
ืฉืืืืฉ: ืงืืฉืืจ ืืฉืชืืฉืื ืืฉืืจืืช ืืืืืืช SAML ืื ืืืืืงืช ืืืจืืื
ื ืืชื ืืืฉืชืืฉ ืืืชืืืช URL ืื ืืื ืืืืืง ืืช ืืืืืช SAML ืื ืืกืคืง ืืืฉืชืืฉืื ืงืืฉืืจ ืืฉืืจ ืืืชืืืจืืช ืืจื SAML.
ืชืืืื ื-SAML Binding
FastComments ืชืืื ื-bindings ืืืืื ืฉื SAML:
HTTP-POST Binding
- ืฉืืื ืขืืงืจืืช: ื-binding ืืฉืืื ืืืืชืจ ืืชืฉืืืืช SAML
- ืืืืื: ืชืฉืืืช SAML ื ืฉืืืช ืืืืฆืขืืช HTTP POST ื-ACS URL
- ืฉืืืืฉ: ืืืืืฅ ืืคืจืืกืืช ืืืืฆืืจ
HTTP-Redirect Binding
- ืฉืืื ืืืืคืืช: ืชืฉืืืช SAML ื ืฉืืืช ืืืืฆืขืืช ืืคื ืื HTTP
- ืืืืืืช: ืืืื ืืืืขื ืืืืื ืืฉื ืืืืืืช ืืืจื ื-URL
- ืฉืืืืฉ: ื ืชืื ืื HTTP-POST ืืืขืืฃ
ืืืื ืืืช Name ID
FastComments ืืืืืจ ืืช ืืืื ืืืช ื-Name ID ืืืื ืืืงืฉืืช SAML:
- ืคืืจืื ืืจืืจืช ืืืื:
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress - ืคืืจืืืื ืืืืคืืื: Persistent, Transient, Unspecified (ื ืืชื ืื ืืืืืจื)
- ืืจืืฉื: ืืชืืืช ืืืื"ื ืืฉืืฉืช ืืืืื ืืืฉืชืืฉ ืืจืืฉื
ืืืคืืื ื ืืงืฉืช SAML
ืืขืช ืืชืืืช ืืืืืช SAML, FastComments ืฉืืื ืืงืฉืืช ืขื ืืืืคืืื ืื ืืืืื:
Request Signing
- ืกืืืืก: ืืืคืฆืืื ืื (ื ืืชื ืืืืืจื)
- ืืืืืจืืชื: ืืชืืื ืืืืืืจืืชื ืืืชืืื ืืืืืืจ
- ืชืขืืื: ืืฉืชืืฉืช ืืชืขืืื ืืืขืืืืช ืืฉืืืจ ืื ืืชืืืช ืืงืฉืืช ืืืคืขืืช
Requested Attributes
FastComments ืืืงืฉ ืืช ืืืืคืืื ืื ืืืืื ื-AuthnRequests ืฉื SAML:
- Email: ื ืืจืฉ ืืืืืื ืืืฉืชืืฉ
- First Name: ืืืคืฆืืื ืื ืืฆืจืื ืชืฆืืื
- Last Name: ืืืคืฆืืื ืื ืืฆืจืื ืชืฆืืื
- Roles/Groups: ืืืคืฆืืื ืื ืืืงืจืช ืืืฉื ืืืจืฉืืืช
ืืขืชืงืช ืืืืข ืฉื ืกืคืง ืืฉืืจืืช
ืขืืื ืืชืฆืืจื ืฉื SAML ืืกืคืง ืฉืืืช ื ืืชื ืื ืืืืืฆื ืฉืืขืชืืงืื ืืืืืืืืช ืืช ืืืืข ื-SP ืื ืืืื ืฉืื:
- ืืืฅ ืขื ืื ืฉืื ืฉื ืืืืข SP (Entity ID, ACS URL, ืืื')
- ืืขืจื ืืืขืชืง ืืืืืืืืช ืืืื
- ืืืืง ืืช ืืขืจื ืืงืื ืคืืืืจืฆืืืช ืกืคืง ืืืืืช ืฉืื
- ืืืืฉื ืงืฆืจื ืืฆืืืขื ืขื ืืขืชืงื ืืืฆืืืช
ืื ืืงื ืขื ืืขืืจืช ืืืืข ื-SP ืื ื-IdP ืฉืื ืืื ืฉืืืืืช ืืงืืื.
ืืืืข ืขื ืชืขืืืช ื-SP
ืฉืืืืฉ ืืชืขืืื
- ืืืจื: ืืฆืคื ืช ืชืงืฉืืจืช ืืืืืชืช ืืช ืืืืช ื-SP
- ืกืืืื (Rotation): ืืชืขืืืืช ืื ืืืืืช ืืืืืืืืช ืขื ืืื FastComments
- ืืืฉื: ืชืขืืืืช ืฆืืืืจืืืช ืืืื ืืช ืืจื ืืชืืืช ืืืื-ืืื
ืคืจืื ืืชืขืืื
- ืืืืืจืืชื: RSA-2048 ืื ืืืื ืืืชืจ
- ืชืืงืฃ: ืืชืขืืืืช ืืชืืืฉืืช ืืืืืืืืช ืืคื ื ืชืคืืื
- ืืคืฆื: ืืืื ื ืืจื ืืื-ืืื ืกืื ืืจืื ืฉื SAML
ืคืชืจืื ืชืงืืืช ืืชืฆืืจืช ื-SP
ืื ืกืคืง ืืืืืช ืฉืื ืืืืื ืขื ืืขืืืช ืืืืืข ื-SP:
- ืืืช ืืช ืืชืืืืช ื-URL: ืืื ืฉืื ืืืชืืืืช ืืฉืชืืฉืืช ื-HTTPS ืืืืืืืช ืืช ื-tenant ID ืื ืืื
- ืืืืง ืืช ืืืื-ืืื: ืืฉืชืืฉ ืืืชืืืช ืืืื-ืืื ืืื ืืืืช ืืช ืืชืฆืืจื
- ืืืืง ืงืืฉืืจืืืช: ืืื ืฉื-IdP ืฉืื ืืืื ืืืืืข ืื ืงืืืืช ืืงืฆื ืฉื FastComments
- ืืืช ืืช ืืคืืจืื: ืืฉืจ ืฉ-IdP ืฉืื ืชืืื ืืคืืจืื ืืืืืข ืฉื ื-SP
ืืขืืืช ื ืคืืฆืืช ืืืืืืช:
- tenant ID ืฉืืื ืืืชืืืืช ื-URL
- ืืขืืืช ืงืืฉืืจืืืช ืจืฉืช ืืื ื-IdP ื-FastComments
- IdP ืฉืืฆืคื ืืคืืจืืืื ืฉืื ืื ืฉื ืืชืืืืช URL ืื ืืืคืฉืจืืืืช ืชืฆืืจื ื ืืกืคืืช
ืชืคืงืืืื ืืืจืฉืืืช ืืฉืชืืฉ 
FastComments ืืืคื ืชืคืงืืื ืืฉืชืืฉ ืฉื SAML ืืืจืฉืืืช ืคื ืืืืืช, ืืืืคืฉืจ ืืงืจืช ืืืฉื ืืืืกืกืช-ืชืคืงืืืื ืขืืืจ ืืืจืืื ืฉืื.
ืืขืจืืช ืืชืคืงืืืื ืฉื FastComments
FastComments ืืฉืชืืฉืช ืืืขืจืืช ืืจืฉืืืช ืืืืกืกืช ืชืคืงืืืื ืฉืื ืืืฉืชืืฉืื ืืืืืื ืืืืืช ืชืคืงืืืื ืืืืื ืื ืืืชืจ ืฉืงืืืขืื ืืช ืจืืืช ืืืืฉื ืืืืืืืืช ืฉืืื.
ืชืคืงืืื FastComments ืืืืื ืื
ืชืคืงืืืื ื ืืืืืืื
fc-account-owner
- Permissions: ืืืฉื ื ืืืืืืช ืืืื
- Capabilities: ืื ืืชืืื ืืช, ื ืืืื ืชืฉืืืืื, ื ืืืื ืืฉืชืืฉืื
- Use Case: ืื ืืื ืืฉืืื ืจืืฉืืื ืืืขืื ืืฉืืื
fc-admin-admin
- Permissions: ืืืฉื ื ืืืืืืช ืืจืื ืืชืืื ืืช
- Capabilities: ื ืืืื ืืฉืชืืฉืื, ืงืื ืคืืืืจืฆืื, ืืชื ืืกืืืืช/ืืงืจื. ืืืื ืื ืื ืื ืืืื ืืืจืื.
- Use Case: ืื ืืืื ืืฉื ืืื ืืฆืืืชื IT
fc-billing-admin
- Permissions: ื ืืืื ืืฉืืื ืืืช ืืื ืืืื
- Capabilities: ืฉืืืืช ืชืฉืืื, ืืฉืืื ืืืช, ืฉืื ืืืื ืืื ืื
- Use Case: ืืืจื ืฆืืืช ืืืกืคืื ืื ืฆืืื ืืืื
ืชืคืงืืืื ืืืืืืื
fc-analytics-admin
- Permissions: ืืืฉื ืื ืืชืืืื ืืืืืื
- Capabilities: ืฆืคืืื ืืกืืืืกืืืงืืช ืืืชืจ, ื ืชืื ื ืืขืืจืืืช ืืฉืชืืฉืื
- Use Case: ืฆืืืชื ืฉืืืืง ืืื ืืืกืืื ื ืชืื ืื
fc-api-admin
- Permissions: ืืืฉื ืื ืืืื API
- Capabilities: ืืืฉืืจื API, ืงืื ืคืืืืจืฆืืืช webhooks
- Use Case: ืืคืชืืื ืืืฉืืืื ืืื ืืื
fc-moderator
- Permissions: ืืืืืืช ืืชืืื ืชืืืืืช
- Capabilities: ืืืฉืืจ/ืืืืื ืฉื ืชืืืืืช, ื ืืืื ืกืคืื
- Use Case: ืืคืงืื ืงืืืื ืืื ืืื ืชืืื
ืชืฆืืจืช ืืืคืื ืชืคืงืืืื
ืืงืืจืืช ืืืคืืื ื SAML
FastComments ืืงืืืช ืืืืข ืขื ืชืคืงืืืื ืืฉืืืช ืืืคืืื ื SAML ืฉืื ืื ืืื ืืืืืื ืชืืืืืช ืขื ืกืคืงื ืืืืช ืฉืื ืื:
Standard Attribute Names:
rolesgroupsmemberOfrolegroup
Microsoft/ADFS Attributes:
http://schemas.microsoft.com/ws/2008/06/identity/claims/rolehttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/role
ืคืืจืืืื ื ืชืืืื ืฉื ืชืคืงืืืื
Array Format (Preferred):
<saml:Attribute Name="roles">
<saml:AttributeValue>fc-admin-admin</saml:AttributeValue>
<saml:AttributeValue>fc-moderator</saml:AttributeValue>
</saml:Attribute>
Comma-Separated Format:
<saml:Attribute Name="roles">
<saml:AttributeValue>fc-admin-admin,fc-moderator</saml:AttributeValue>
</saml:Attribute>
Single Role Format:
<saml:Attribute Name="roles">
<saml:AttributeValue>fc-admin-admin</saml:AttributeValue>
</saml:Attribute>
ืงืื ืคืืืืจืฆืืืช ืชืคืงืืื ืกืคืง ืืืืช
Microsoft Azure AD
App Roles Configuration:
- ืืืืจ ืืช ืชืคืงืืื FastComments ืืืคืืืงืฆืืืช Azure AD ืฉืื
- ืืงืฆื ืืฉืชืืฉืื ืืชืคืงืืื ืืืืฉืื ืืืชืืืืื
- ืงื ืคื claims ืืืืื ืืช ืืชืคืงืืืื ืฉืืืงืฆื
Attribute Mapping:
Attribute Name: roles Source Attribute: user.assignedroles
Okta
Group Assignment:
- ืฆืืจ ืงืืืฆืืช ืืชืืืืืช ืืฉืืืช ืชืคืงืืื FastComments
- ืืงืฆื ืืฉืชืืฉืื ืืงืืืฆืืช ืืืชืืืืืช
- ืงื ืคื ืืฆืืจืืช ืืืคืืื ืื
Attribute Statement:
Name: roles Value: user.groups Filter: Starts with "fc-"
Google Workspace
Group Mapping:
- ืฆืืจ ืืืืืืช ืืจืืื ืืืช ืื ืงืืืฆืืช
- ืชื ืฉืืืช ืืงืืืฆืืช ืขื ืงืืืืืืช ืชืคืงืืื FastComments
- ืงื ืคื ืืืคืื ืืืคืืื ืื
Custom Attributes:
Attribute Name: roles Value: Groups or custom schema attribute
ืืชื ืืืืช ืืจืืจืช ืืืื ืฉื ืืฉืชืืฉืื
ืืฉืชืืฉืื ืืื ืชืคืงืืืื
ืืืฉืจ ืืืฉืชืืฉ SAML ืืื ืชืคืงืืืื ืื ืฉืืฉ ืื ืชืคืงืืืื ืฉืื ืืืืืื:
- ืืืฉืชืืฉ ื ืืฆืจ ืืืชืืื ืกืื ืืจืื
- ืื ื ืืชื ืช ืืืฉื ื ืืืืืืช
- ืืืื ืืคืจืกื ืืื ืื ืืช ืืชืืืืืช ืฉืื ืืืื
- ืื ืืืื ืืืฉืช ืืคืื ืงืฆืืืช ืืื ืื ืืืื
ืืจืืฉืช ืชืคืงืืืื
- ืืืฉืชืืฉืื ืืืืืื ืืืืืช ืืกืคืจ ืชืคืงืืืื ืื-ืืื ืืช
- ืืืจืฉืืืช ืืฆืืืจืืช (ืื ืืจืื ืืืืืื ืืืืชืจ ืฉื ืืจืฉืื)
- ืฉืื ืืืื ืืชืคืงืืืื ื-IdP ืืฉืชืงืคืื ืืื ืืกื ืืืื
ื ืืืื ืืฉืชืืฉื SAML
ืืฆืืจืช ืืฉืชืืฉ
ืืืฉืจ ืืฉืชืืฉ ื ืื ืก ืืจื SAML ืืคืขื ืืจืืฉืื ื:
- User Account: ื ืืฆืจ ืืืืืืืืช ืืฉืืืืื ืืฉืืฉ ืืืืื
- Role Assignment: ืืชืคืงืืืื ืืืืืื ืืืชืืกืก ืขื ืืืคืืื ื SAML
- Profile Information: ืฉื ืคืจืื/ืืฉืคืื ืืชืืืืื ืื ืกืืคืงื
- Permission Activation: ืืชืคืงืืืื ืืืคืืื ืคืขืืืื ืืื
ืขืืืื ื ืชืคืงืืืื
ืืฉืชืืฉื SAML ืงืืืืื ืืงืืืื ืขืืืื ื ืชืคืงืืืื:
- Login Trigger: ืขืืืื ื ืชืคืงืืืื ืืชืืฆืขืื ืืืืื ืื ืื ืืกืช SAML
- Immediate Effect: ืืจืฉืืืช ืืืฉืืช ืืืืช ืืื
- Role Removal: ืชืคืงืืืื ืฉืืืกืจื ืืืืืืื ืืืืืืืืช
- Audit Trail: ืฉืื ืืืื ืืชืคืงืืืื ืืชืืขืืืื ืืืืื ื ืืืงืืจืช
ืืืคืื ืชืคืงืืืื ืืืชืื
ืืชืืื ืืจืืื ืืช
ืืืงืืืืช ืืจืืื ืืื ืขื ืืจืืฉืืช ืืืืืืืช:
- ื ืืชื ืืืคืืช ืฉืืืช ืชืคืงืืืื ืืืชืืืื ืืืจืฉืืืช FastComments
- ื ืืชื ืืืืฉื ืืืจืจืืืืช ืชืคืงืืืื ืืืจืืืืช
- ื ืืชื ืืืืืืจ ืืงืจืืช ืืืฉื ืกืคืฆืืคืืืช ืืืืืงืืช
ืคื ื ืืชืืืืช FastComments ืขืืืจ ืชืฆืืจืืช ืืืคืื ืชืคืงืืืื ืืืชืืืืช.
ืืืืืช ืชืคืงืืืื
FastComments ืืืืชืช ืชืคืงืืืื ื ืื ืกืื:
- ืชืคืงืืืื ืฉืื ืืืืืื ืืชืขืืืื (ืื ื ืืืื)
- ืืืคืืื ื ืชืคืงืืืื ืคืืืืื ืืชืืขืืื ืืฆืืจืื ืคืชืจืื ืืขืืืช
- ืืฉืชืืฉืื ืฉืืืจืื ืขื ืืชืคืงืืืื ืืงืืืืื ืื ืืืกืืืช SAML ืืกืจืช ืืืืข ืขื ืชืคืงืืืื
ืฉืืืืช ืืืืืฆืืช
ื ืืืื ืชืคืงืืืื
- Principle of Least Privilege: ืืงืฆื ืืช ืืืจืฉืืืช ืืืื ืืืืืืช ืื ืืืฆืืช
- Regular Auditing: ืืืืง ืชืคืงืืืื ืืืืฉื ืืืืคื ืชืงืืคืชื
- Clear Naming: ืืฉืชืืฉ ืืฉืืืช ืงืืืฆืืช ืชืืืืจืืื ื-IdP ืฉืื
- Documentation: ืชืืืง ืชืืขืื ืฉื ืืงืฆืืืช ืชืคืงืืืื
ืฉืืงืืื ืืืืื
- Role Attributes: ืืื ืฉืืืคืืื ื ืืชืคืงืื ืืืืืืืื ืืจืืื ืืชืืืืืช SAML
- Attribute Validation: ืืืช ืฉืจืง ืืขืจืืืช ืืืจืฉืืช ืืืืืืช ืืืงืฆืืช ืชืคืงืืืื
- Access Reviews: ืืืืง ืืืืคื ืชืืืจ ืืงืฆืืืช ืชืคืงืืืื ื ืืืืืืื
- Monitoring: ื ืืจ ืฉืื ืืืื ืืชืคืงืืืื ืืคืขืืืืช ื ืืืืืืืช
ืคืชืจืื ืืขืืืช ืืชืคืงืืืื
ืืขืืืช ื ืคืืฆืืช
Roles Not Applied:
- ืืืืง ืฉืฉืืืช ืืืคืืื ื SAML ืชืืืืื ืืคืืจืืืื ืื ืชืืืื
- ืืืช ืฉืกืคืง ืืืืืช ืฉืืื ืืืืข ืชืคืงืืืื
- ืืฉืจ ืฉืขืจืื ืืชืคืงืื ืชืืืืื ืืืืืง ืืฉืืืช ืชืคืงืืื FastComments
Access Denied:
- ืืื ืฉืืืฉืชืืฉ ืืืงืฆื ืชืคืงืื ืืชืืื ื-IdP
- ืืืืง ืืืืช ืืจืืืฉืืช ืืืืชืืืช ืืืืืืช/ืงืื ืืช ืฉื ืืชืคืงืื
- ืืฉืจ ืฉืืชืคืงืื ืืขืืฆื ืืจืืื ืืชืฉืืืช SAML
Missing Permissions:
- ืืืืง ืืช ืืืืจืืช ืืชืคืงืืืื ืืืืจืฉืืืช ืื ืืจืฉืืช
- ืืืืง ืืงืฆืืืช ืชืคืงืืืื ืืชื ืืฉืืช
- ืืืช ืฉืืืฉืชืืฉ ื ืื ืก ืืืืจ ืฉืื ืืืื ืืชืคืงืืืื
ืืืืงืช ืืืืืช SAML 
ืืืืงื ืฉื ืชืฆืืจืช SAML ืฉืื ืืืืืืช ืฉืืืืืืช ืคืืขื ืืจืืื ืืคื ื ืคืจืืกื ืืืฉืชืืฉื ืืืฆืืจ.
ืจืฉืืืช ืืืืงื ืืคื ื ืืืืืงื
ืืคื ื ืืืืงืช ืืืืืช SAML, ืืื:
- โ SAML ืืืคืขื ื-FastComments
- โ ืื ืืฉืืืช ืืืจืืฉืื ืืืืื (IdP URL, Certificate)
- โ ื-Identity provider ืืืืืจ ืขื ืืืืข ื-SP ืฉื FastComments
- โ ืืฉืืื ืืฉืชืืฉ ืืืื ืงืืื ื-IdP ืฉืื
- โ ืืืฉืชืืฉ ืืืืื ืืืงืฆืื ืืชืคืงืืืื ืืืชืืืืื
ืฉืืืืช ืืืืงื
ืฉืืื 1: ืืชืืืช ืื ืืกื SAML ืืฉืืจื
ืงืื ืืช ืืชืืืช ืืื ืืกื SAML:
- ืืขืชืง ืืืฃ ืืชืฆืืจื ืฉื SAML ืฉืื
- ืคืืจืื:
https://fastcomments.com/saml/login/{your-tenant-id}
ืืืืง ืืช ืืืืืืช:
- ืคืชื ืืช ืืชืืืช ืืื ืืกื ืฉื SAML ืืืืื ืืคืืคื ืืกืชืจ/ืคืจืื
- ืชืืขืืจ ื-identity provider ืฉืื
- ืืืื ืก ืขื ืืืฉืืจื ืืืืื
- ืืืช ืืช ืืืคื ืื ืืืืฆืืืช ืืืจื ื-FastComments
ืฉืืื 2: ืืืฉื ืืืื ืื ืืืื
ื ืืื ื-FastComments:
- ืขืืืจ ืื ืืื ืื ืืืื ืฉื FastComments
- ืืคืฉ ืืช ืืคืฉืจืืช ืืื ืืกื ืืืืฆืขืืช SAML ืื ืืฉืชืืฉ ืืืชืืืช ืืื ืืกื ืฉื SAML
ืืฉืืื ืืช ืืจืืืช ืืืืืืช:
- ืืืช ืืจื ื-identity provider ืฉืื
- ืืืช ืืืฉื ืืชืืื ืืช ืื ืืืื ืืืชืืืืืช ืืืชืื ืืชืคืงืืืื ืฉืืืงืฆื
ืฉืืื 3: ืืืืงืช ืืื ืืืจืฆืื ืขื ืืืืืื'ื
ืืืืืงืช SAML ืขื ืืืืื'ืืื ืฉื ืชืืืืืช:
- ืืืืข ืืช ืืืืืื'ื: ืืฉืชืืฉ ืืืืืื'ื ืฉื FastComments ืืขืืื ืืืื
- ืืืืืช: ืืืฅ ืขื ืื ืืกื ืืืืจ ืืืคืฉืจืืช SAML (ืื ืืืื ื)
- ืืืืืช: ืืฉืจ ืฉืืืฉืชืืฉ ืืืคืืข ืืืืืืช ืืืืืื'ื
ืื ืืืืช ืืืืื ืืืืืงื
ืืจืืืช ืืืืืืช
ืืคื ืื ืืืฆืืืช:
- ืืืฉืชืืฉ ืืืขืืจ ืืืฃ ืืืชืืืจืืช ืฉื IdP
- ืืฃ ืืืชืืืจืืช ืฉื IdP ื ืืขื ืืืืื
- ืื ืืชืจืืฉืื ืฉืืืืืช ืชืขืืื ืื SSL
ืืืืืช ื-IdP:
- ืืืฉืชืืฉ ืืืื ืืืืื ืก ืขื ืืืฉืืจื ื-IdP ืฉืื
- ืืืืืช ืจื-ืฉืืื ืขืืื (ืื ืืืืืจ)
- ืืื ืฉืืืืืช ืืืืืช ืื-IdP
ืืืจื ื-FastComments:
- ืืืฉืชืืฉ ืืืขืืจ ืืืจื ื-FastComments ืืืืจ ืืชืืืจืืช ืืืฆืืืช ื-IdP
- ืืื ืฉืืืืืช ืืืืืช ืฉื ืืขื ืช SAML
- ืืืฉืชืืฉ ืืงืื ืืืฉื ืืชืืื ืืช ืืืชืืืืืช ื-FastComments
ืืืืข ืขื ืืืฉืชืืฉ
ื ืชืื ื ืคืจืืคืื ืืกืืกืืื:
- ืืชืืืช ืืืืืืื ืืชืงืืืช ืืจืืื
- ืฉื ืคืจืื ืืฉื ืืฉืคืื ืืืคืืขืื ืื ืกืืคืงื
- ืคืจืืคืื ืืืฉืชืืฉ ื ืืฆืจ ืื ืืขืืืื
ืืงืฆืืช ืชืคืงืืืื:
- ืชืคืงืืืื ื ืืืืืืื ืืืงืฆืื ืืจืืื
- ืืืฉืชืืฉ ืืขื ืืืฉื ืืชืืื ืืช ื ืืืื ืฆืคืืืืช
- ืืืจืฉืืืช ืชืืืืืช ืืช ืืชืคืงืืืื ืฉืืืงืฆื
ืืืืืช ืชืืืืช SAML
ืืืืืช ืชืขืืื:
- ืืชืืืช ืชืืืืช SAML ืืืืืชืช ืืืฆืืื
- ืืื ืฉืืืืืช ืืืืืช ืชืขืืื ืืืืื ืื
- ืืชืืืื ืืชืงืืืช ืืืืืชืืช
ืขืืืื ืืืคืืื ืื:
- ืืืืคืืื ืื ืื ืืจืฉืื (email) ืงืืืืื
- ืืืืคืืื ืื ืืืืคืฆืืื ืืืื ืืขืืืืื ืืืืื
- ืืืคืืื ื ืชืคืงืื ืืคืืจืฉืื ืืืืืืื ืืจืืื
ืืืืงืช ืชืจืืืฉืื ืฉืื ืื
ืืจืืืช ืืฉืชืืฉ ืกืื ืืจืืืช
ืืฉืชืืฉ ืืืฉ:
- ืื ืืกืช SAML ืืคืขื ืืจืืฉืื ื
- ืืฆืืจืช ืืฉืืื
- ืืงืฆืืช ืืจืฉืืืช ืืกืืกืืืช
ืืฉืชืืฉ ืงืืื:
- ืื ืืกื ืฉื ืืฉืชืืฉ ืืืืจ
- ืขืืืื ื ืคืจืืคืื
- ืฉืื ืืืื ืืชืคืงืื
ืืืืงืช ืืืฉืช ืื ืื
ืชืคืงืืืื ื ืืืืืืื:
- ืืืืง ืืฉืชืืฉืื ืขื ืืชืคืงืื
fc-admin-admin - ืืืช ืืืฉื ืืืื ืื ืืืื
- ืืฉืจ ืืืืืืช ื ืืืืืืืช
- ืืืืง ืืฉืชืืฉืื ืขื ืืชืคืงืื
ืชืคืงืืืื ืืืืืืื:
- ืืืืง ืืืฉืช
fc-moderatorืืชืืื ืืช ืืืืืจืฆืื - ืืืืง ืืืฉืช
fc-analytics-adminืื ืืชืืืื - ืืืืง ืืืฉืช
fc-billing-adminืืชืืื ืืช ืืืืื
- ืืืืง ืืืฉืช
ืชืจืืืฉื ืฉืืืื
ืชืขืืืืช ืื ืชืงืคืืช:
- ืืืืง ืขื ืชืขืืืืช ืฉืคื ืชืืงืคื ืื ืฉืืืืืช
- ืืืช ืืืคืื ืฉืืืืืช ืชืงืื
ืืืคืืื ืื ืืกืจืื:
- ืืืืง ืชืืืืืช SAML ืืื ืืืคืืื ื-email ืื ืืจืฉ
- ืืืช ืืืคืื ืฉืืืืืช ืชืงืื
ืืขืืืช ืจืฉืช:
- ืืืืง ืขื ืืขืืืช ืงืืฉืืจืืืช
- ืืืช ืืืคืื ืืืื ืืืชื ื
ืคืชืจืื ืืขืืืช ืืืืืงืืช
ืืขืืืช ืืืืืช ื ืคืืฆืืช
ืืืืืช ืืคื ืื:
- ืืืืง ืฉ-SP Entity ID ืชืืื ืืชืฆืืจืช ื-IdP
- ืืืช ืฉืืชืืืช ื-ACS (ACS URL) ืืืืืจืช ื ืืื
- ืืฉืจ ืฉืืืืจืืช SAML binding ืชืืืืืช
ืฉืืืืืช ืชืขืืื:
- ืืืื ืฉืืชืขืืื ืืืืืช ืืช ืกืืื ื BEGIN/END
- ืืืช ืฉืืชืขืืื ืื ืคืื ืชืืงืฃ
- ืืืืง ืจืืืืื ืืืืชืจืื ืื ืืขืืืช ืขืืฆืื
ืืขืืืช ืืืคืืื ืื:
- ืืฉืจ ืฉืืืคืืื ื-email ื ืฉืื
- ืืืช ืฉืืืคืืื ื ืืชืคืงืื ืืฉืชืืฉืื ืืฉื ื ืืื
- ืืืืง ืืช ืคืืจืื ืืืืคืืื (array ืืขืืืช ืืืคืจื ืืคืกืืงืื)
ืืื ืืืืื
ืืื ืืืคืชืืื ืืืคืืคื:
- ื ืืจ ืืงืฉืืช ืจืฉืช ืืืืื ืืจืืืช SAML
- ืืืืง ืฉืืืืืช HTTP ืื ืืคื ืืืช
- ืืืืง ืืช ื ืชืื ื POST ืฉื SAML (ืื ืืืืืื)
ืืื ืืืืงื ืฉื IdP:
- ืจืื ื-IdP ืืกืคืงืื ืืืฉืงื ืืืืงื ื-SAML
- ืืฉืชืืฉ ืืืื ื-IdP ืืื ืืืืช ืืช ืคืืจืื ืชืืืืช SAML
- ืืืืง ืืช ืงืื ืคืืืืจืฆืืืช ืืืืคืืื ืื ืืคื ื ืฉืืืื ื-FastComments
ืชืืืืช FastComments:
- ืืคืขื ืจืืฉืื ืืืืื ืืืืื ืืืืืงื
- ืฉืืืจ ืืืืขืืช ืฉืืืื ืืืืชืืืช ืืื
- ืคื ื ืืชืืืื ืขื ืคืจืื ืฉืืืื ืกืคืฆืืคืืื
ืฉืืืืช ืืืืืฆืืช ืืืืืงืืช
ืืืืจืช ืกืืืืืช ืืืืงื
ืืฉืชืืฉื ืืืื ืืืขืืืืื:
- ืฆืืจ ืืฉืืื ืืช ืืืื ืกืคืฆืืคืืื ื-IdP ืฉืื
- ืืงืฆื ืฉืืืืื ืชืคืงืืืื ืฉืื ืื
- ืืฉืชืืฉ ืืืชืืืืช ืืื"ื ืฉื ืืืื ืฉืงื ืืืืืช
ืืืืงืืช ืืืืืืืช:
- ืืฉืชืืฉ ืืืืื ืืช ืืคืืคื ืืกืชืจ/ืคืจืืืื
- ื ืงื ืขืืืืืช ืืื ืืืืงืืช
- ืืืืง ืขื ืืฉืืื ืืช ืืฉืชืืฉ ืฉืื ืื
ืชืืขืื:
- ืจืืฉืื ืชืจืืืฉื ืืืืงื ืืชืืฆืืืชืืื
- ืชืขื ืื ืฉืื ืื ืชืฆืืจื ืฉื ืืจืฉ
- ืฆืืื ืคืจืื ืงืื ืคืืืืจืฆืื ืืืฆืืืื
ืืืืืช ืืคื ื ืคืจืืกื
ืืืืงืืช ืืงืืคืืช:
- ืืืืง ืืช ืื ืฉืืืืื ืืชืคืงืืืื
- ืืืช ืืงืจืื ืงืฆื ืืชื ืื ืฉืืืื
- ืืฉืจ ืฉืืืืฆืืขืื ืืงืืืืื
ืงืืืช ืืฉืชืืฉืื:
- ืชื ืืืฉืชืืฉื ืงืฆื ืืืืืง ืืช ืืจืืืช ืืืืืืช
- ืืกืืฃ ืืฉืื ืขื ืืืืืืช ืืืฉืชืืฉ
- ืืืช ืฉืืืจืืื ืขืื ื ืขื ืืืจืืฉืืช
ืกืงืืจืช ืืืืื:
- ืืฉืจ ืฉืืืืืช ืืชืขืืื ืขืืื
- ืืืช ืฉืืงืฆืืืช ืืชืคืงืืืื ืืืืืืช
- ืืืืง ืืืืคืช ืืงืจืช ืืืืฉื
ืคืจืืกื ืืืืฆืืจ
ืืืืจ ืืืืงืืช ืืืฆืืืืช:
- ืคืจืืกื ืืืจืืชืืช: ืฉืงืื ืืคืจืืก ืืช SAML ืชืืืื ืืืืง ืืืืฉืชืืฉืื
- ื ืืืืจ: ื ืืจ ืืช ืฉืืขืืจื ืืืฆืืื ืฉื ืืืืืืช ืืืช ืืืื ื ืืฉืืืืืช
- ืืื ืช ืชืืืื: ืืืื ืืช ืฆืืืช ืืชืืืื ืืฉืืืืช ืืงืฉืืจืืช ื-SAML
- ืชืืขืื: ืกืคืง ืชืืขืื ืืืฉืชืืฉ ืขืืืจ ืชืืืื ืืื ืืกื ื-SAML
ืืขืืืช ื ืคืืฆืืช 
ืืืจืื ืื ืืืกื ืืขืืืช ื ืคืืฆืืช ืืืืืืช SAML ืืืคืชืจืื ืืช ืืื.
Certificate and Security Issues
Invalid Certificate Error
Symptoms:
- "Certificate validation failed" error
- ืืฉืชืืฉืื ืืื ื ืืฆืืืืื ืืืฉืืื ืืืืืช SAML
- ืชืืืืืช SAML ื ืืืืช
Common Causes:
- ืคืืจืื ืืชืขืืื ืฉืืื
- ืืชืขืืื ืคืื
- ืกืืคืงื ืชืขืืื ืฉืืืื
- ืชืืืื ื ืืกืคืื ืื ืจืืืืื ืืชืขืืื
Solutions:
Verify Certificate Format:
- ืืื ืฉืืชืขืืื ืืืืืช ืืช ืืกืืืื ืื
-----BEGIN CERTIFICATE-----ื------END CERTIFICATE----- - ืืกืจ ืื ืจืืืืื ืื ืฉืืืจืืช ืฉืืจื ืืืืชืจืืช
- ืืขืชืง ืืช ืืชืขืืื ืืฉืืจืืช ืืืืืืื ืื ืืืงืื ืคืืืืจืฆืื ืฉื ื-IdP
- ืืื ืฉืืชืขืืื ืืืืืช ืืช ืืกืืืื ืื
Check Certificate Validity:
- ืืื ืฉืืชืขืืื ืื ืคืื
- ืืฉืจ ืฉืืชืขืืื ืืืืขืืช ื-IdP ืื ืืื
- ืืฉืชืืฉ ืืืืืืืืืจืื ืืงืืื ืื ืฉื ืชืขืืืืช ืืื ืืืืืง ืืช ืืคืืจืื
Re-download Certificate:
- ืืืจื ืชืขืืื ืืืฉื ืื-IdP
- ืืฉืชืืฉ ื-IdP metadata URL ืื ืืืื
- ืืฉืจ ืฉืืชืขืืื ืชืืืืช ืืงืื ืคืืืืจืฆืื ืื ืืืืืช ืฉื ื-IdP
Signature Verification Failed
Symptoms:
- ืฉืืืืืช ืืืืืช ืืชืืื ืฉื ืืกืจืืืคืืงืฆืืืช SAML
- ืืืืืืช ื ืืฉื ืืืืจ ืื ืืกื ื-IdP
- ืืืืขืืช ืฉืืืื "Invalid signature"
Solutions:
Algorithm Mismatch:
- ืืืืง ืฉืืืืืืจืืชื ืฉื ืืืชืืื ื-FastComments ืชืืื ืืช ื-IdP
- ื ืกื ืืืืืจืืชืืื ืฉืื ืื ืืืชืืื (SHA-256, SHA-1, SHA-512)
- ืืืช ืฉืืืืืืจืืชื ืฉื ืืกืืืื (digest) ืชืืื ืืงืื ืคืืืืจืฆืื ืฉื ื-IdP
Certificate Issues:
- ืืื ืฉืืชืขืืื ืื ืืื ื ืืืชืืื ืืืืืจืช
- ืืืช ืฉืืชืขืืื ืชืืืืช ืืืคืชื ืืคืจืื ืฉื ืืฆื ืืฉืืืืฉ ืข"ื ื-IdP
- ืืืืง ืื ืืฉ ืกืืืื ืชืขืืืืช (certificate rotation) ื-IdP
Configuration Issues
Wrong Entity ID or ACS URL
Symptoms:
- ื-IdP ืืืืื "Unknown Service Provider"
- ืชืืืืืช SAML ื ืฉืืืืช ื-endpoint ืฉืืื
- ืืืืืืช ืื ืืกืชืืื
Solutions:
Verify SP Information:
- ืืขืชืง ืืืืืืง ืืช ื-Entity ID ืืืงืื ืคืืืืจืฆืื ืฉื FastComments
- ืืื ืฉ-ACS URL ืชืืื ืืคืืจืื:
https://fastcomments.com/saml/callback/{tenant-id} - ืืืืง ืฉืืืืืช ืืงืืื ื-tenant ID
IdP Configuration:
- ืขืืื ืืช ื-IdP ืขื ื-SP Entity ID ืื ืืื
- ืงืืข ืืช ื-ACS/Reply URL ืืืชืืื
- ืืืช ืืช ืืืืจืืช ื-binding ืฉื ื-IdP (HTTP-POST ืืืขืืฃ)
Missing or Incorrect Attributes
Symptoms:
- ืืฉืชืืฉืื ื ืืฆืจืื ืืื ืชืคืงืืืื ืืชืืืืื
- ืืกืจ ืืืืข ืืคืจืืคืื ืืืฉืชืืฉ
- ืฉืืืืืช "Email required"
Solutions:
Email Attribute:
- ืืื ืฉื-IdP ืฉืืื ืืช ืืชืืื ื ืฉื ืืืืื
- ืืืืง ืืืคืื ืฉืืืช ืืชืืื ืืช (email, emailAddress, ืืื')
- ืืืช ืฉืืขืจื ืฉื ืืืืื ืืื ืืชืืืช ืืืื ืชืงืื ื
Role Attributes:
- ืืฉืจ ืฉื-IdP ืฉืืื ืืืืข ืขื ืชืคืงืืืื/ืงืืืฆืืช
- ืืืืง ืฉืฉืืืช ืชืืื ืืช ืืชืคืงืืืื ืชืืืืื ืืฆืืคืืืช ืฉื FastComments
- ืืืช ืฉืขืจืื ืืชืคืงืื ืชืืืืื ืืืืืง ืืฉืืืช ืืชืคืงืืืื ื-FastComments
Attribute Format:
- ืืืืง ืื ืคืืจืื ืืขืจื ืืื ืคืืจืื ืืืคืจื ืืคืกืืงืื ืขืืืจ ืชืคืงืืื ืืฉืชืืฉ
- ืืื ืฉืขืจืื ืืชืืื ื ืืื ื ืืืืืื ืจืืืืื ืืืืชืจืื
- ืืืืง ืจืืืฉืืช ืืืืชืืืช ืืฉืืืช ืชืคืงืืืื
Authentication Flow Issues
Redirect Loop
Symptoms:
- ืืืคืืคื ืืืฆืข ืืคื ืืืช ืืื ืกืืคืืืช ืืื FastComments ื-IdP
- ืืืืืืช ืืขืืื ืื ืืกืชืืื
- ืืกืคืจ ืืคื ืืืช ืืืฆื ืืืื ืืืคืชืืื ืฉื ืืืคืืคื
Solutions:
Check SP Configuration:
- ืืื ืฉื-Entity ID ืชืืื ืืืืืง ืืงืื ืคืืืืจืฆืื ืฉื ื-IdP
- ืืื ืฉ-ACS URL ืืืืืจ ื ืืื ื-IdP
- ืืืืง ืกืืืฉืื ืืกืืฃ ื-URLs
Session Issues:
- ื ืงื ืขืืืืืช ืืืคืืคื ืื ืกื ืฉืื
- ืืืืง ืืืืื ืืคืืคื ืคืจืื/incognito
- ืืืืง ืืืืจืืช timeout ืฉื ืกืฉื
Access Denied After Authentication
Symptoms:
- ืืืืืช SAML ืืฆืืื
- ืืืฉืชืืฉ ืืืคืจืฉ ืืืจื ื-FastComments
- ืืืฆืืช ืืืืขืช "Access denied" ืื ืฉืืืืช ืืจืฉืืืช
Solutions:
Role Assignment:
- ืืื ืฉืืืฉืชืืฉ ืืฉ ืชืคืงืืืื ืืชืืืืื ื-IdP
- ืืืืง ืฉืืชืืื ืช ืืชืคืงืื ื ืฉืืืช ืืชืฉืืืช ื-SAML
- ืืฉืจ ืฉืฉืืืช ืืชืคืงืืืื ืชืืืืื ืืืืืง ืืืจืืฉืืช ืฉื FastComments
Package Limitations:
- ืืืืง ืฉืืืฉืืื ืืฉ ืชืืื ืืช Flex ืื Pro
- ืืื ืฉืชืืื ืช ื-SAML ืืืคืขืืช ืืืืืื
- ืคื ื ืืชืืืื ืื ืืืืืื ืืืืืช SAML ืื ืืชืืื ื ืื ืืืื ื
Identity Provider Specific Issues
Microsoft Azure AD
Common Issues:
- ืืงืฆืืืช ืชืคืงืืื ืืคืืืงืฆืื ืื ืืฉืชืงืคืืช ืืืืงื ืื
- Claims ืื ื ืฉืืืืช ืืจืืื
- ืืจืืฉืืช ืืงืฆืืช ืืฉืชืืฉืื
Solutions:
- ืืืืง ืืงืฆืืช ืืฉืชืืฉ ืืืคืืืงืฆืืืช FastComments
- ืืืช ืฉืชืคืงืืื ืืืคืืืงืฆืื ืืืืืจืื ืืจืืื
- ืืื ืฉืืืคืื ื-claims ืืืื ืืช ืืชืืื ืืช ืื ืืจืฉืืช
Okta
Common Issues:
- ืืกื ื ื ืงืืืฆืืช ืื ืขืืืืื ืืจืืื
- ืืฆืืจืืช ืชืืื ื (attribute statements) ืืืืืจืืช ืื ื ืืื
- ืืขืืืช ืืืงืฆืืช ืืคืืืงืฆืื
Solutions:
- ืกืงืืจ ืืช ืงืื ืคืืืืจืฆืืืช ื-attribute statements
- ืืืืง ืืงืฆืืช ืงืืืฆืืช ืืืืื ืกืื ืื
- ืืืช ืฉืืืคืืืงืฆืื ืืืงืฆืช ืืืฉืชืืฉืื/ืงืืืฆืืช ืืืชืืืืืช
Google Workspace
Common Issues:
- ืชืืื ืืช ืืืชืืืืช ืืืฉืืช ืื ืืืืคืืช ืืจืืื
- ืืืจืืช ืืงืืืฆื ืื ื ืฉืืืืช
- ืฉืืืืืช ืืงืื ืคืืืืจืฆืืืช ืืคืืืงืฆืืืช SAML
Solutions:
- ืืืืจ ืกืืืื ืืืชืืืช ืืืฉืืช ืืชืืื ืืช ืชืคืงืืืื
- ืืืืง ืืคืฆืช ืืืจืืช ืืงืืืฆื
- ืืืช ืืืคืื ืชืืื ืืช ืฉื ืืคืืืงืฆืืืช SAML
Network and Connectivity Issues
Timeout Errors
Symptoms:
- ืชืืืื ืืืืืืช ืคื ืชืืงืฃ (timeout)
- "Request timeout" ืื ืฉืืืืืช ืืืืืช
- ืืจืืืช ืืืืืช ืืืืืช
Solutions:
Network Connectivity:
- ืืืืง ืฉืืืงื ืืืืืช ืืฉ ืืืคืฉืจืื ืชืงืฉืืจืช ืขื FastComments
- ืืืช ืจืืืืืฆืืืช DNS ืขืืืจ fastcomments.com
- ืืืืง ืืืืืจ ืจืฉืช ืื-IdP ืื FastComments
Performance Issues:
- ืืืืง ืืื ื ืชืืืื ืฉื ื-IdP
- ืืืช ืฉืืืืืืงืช ืฉืจืฉืจืช ืืชืขืืืืช ืืื ืงืืฉื ืฉืืืจื ืืขืืืื
- ืฉืงืื ืืฉืคืขืช ืืฉืืืื ืืจืฉืช ืืื ื-IdP ืืืืฉืชืืฉืื
SSL/TLS Issues
Symptoms:
- ืืืืจืืช ืชืขืืื ืืืืื ืืืืืืช
- ืืฉืื SSL handshake
- ืฉืืืืืช "Secure connection failed"
Solutions:
- ืืื ืฉืื ื ืงืืืืช ืืงืฆื ืฉื SAML ืืฉืชืืฉืืช ื-HTTPS
- ืืืืง ืชืืงืฃ ืชืขืืืืช ืืื ืืืืืืื ืื ืืืขืืจืืื
- ืืืช ืชืืืืืช ืืจืกืช TLS
Debugging and Logging
Enabling Debug Information
Browser Developer Tools:
- ืขืงืื ืืืจื ืืฉืื ืืช ื-Network ืืืืื ืืจืืืช SAML
- ืืืืง ืืช ื-Console ืืฉืืืืืช JavaScript
- ืืื ืืงืฉืืช POST ืฉื SAML (ืื ื ืจืืืช)
IdP Logging:
- ืืคืฉืจ ืืืืื ืฉื SAML ื-IdP ืฉืื
- ืกืงืืจ ืืืืื ืฉื ื-IdP ืืคืจืื ืืงืฉืืช/ืชืืืืืช SAML
- ืืืืง ืืขืืืช ืืืืคืื ืชืืื ืืช
Common Log Messages
FastComments Logs:
- "SAML config not found" - SAML ืื ืืืคืขื ืื ืืืืืจ ืื ื ืืื
- "Invalid certificate" - ืืืืืช ืืชืขืืื ื ืืฉื
- "Missing email attribute" - ืืืืื ืื ืืจืฉ ืื ื ืฉืื ืืชืฉืืืช ื-SAML
IdP Logs:
- "Unknown service provider" - ืืืกืจ ืืชืืื ืฉื Entity ID
- "Invalid ACS URL" - ืืชืืืช Assertion Consumer Service ืฉืืืื
- "User not assigned" - ืืืฉืชืืฉ ืืื ืืืฉื ืืืคืืืงืฆืืืช SAML
Getting Help
Information to Gather
ืืืฉืจ ืคืื ืื ืืชืืืื, ืกืคืง:
- ืืืืขืืช ืฉืืืื ืืืืืงืืช ืืืืชืืืช ืืื
- ืคืจืื ืงืื ืคืืืืจืฆืืืช SAML (ืืื ืืืืข ืจืืืฉ)
- ืกืื ืืืจืกืช ื-IdP
- ืฆืขืืื ืืฉืืืืจ ืืืขืื
- ืืืืข ืขื ืืืคืืคื ืืืจืฉืช
FastComments Support
For SAML-related issues:
- Use the ืคืืจืื ืืชืืืื
- ืืืื ืืช tenant ID ืืืื"ืื ืืืฉืชืืฉืื ืืืืฉืคืขืื
- ืกืคืง ืืืืขืืช ืฉืืืื ืืคืจืื ืงืื ืคืืืืจืฆืื
- ืฆืืื ืืช ืกืื ื-IdP ืืฉืืืช ืืงืื ืคืืืืจืฆืื
IdP Support
For IdP-specific issues:
- ืขืืื ืืชืืขืื ื-IdP ืืคืชืจืื ืืขืืืช SAML
- ืืฉืชืืฉ ืืขืจืืฆื ืืชืืืื ืฉื ื-IdP ืืืขืืืช ืงืื ืคืืืืจืฆืื
- ื ืฆื ืคืืจืืืื ืงืืืืชืืื ืฉื ื-IdP ืืืขืืืช ื ืคืืฆืืช
Prevention Tips
Best Practices
Test Thoroughly:
- ืืืืง ืฉืื ืืืื ืืงืื ืคืืืืจืฆืื ืืกืืืื ืฉืืื ื ืคืจืืืงืฉื
- ืืืช ืขื ืืกืคืจ ืืฉืชืืฉื ืืืืงื
- ืชืขื ืงืื ืคืืืืจืฆืืืช ืฉืคืืขืืืช
Monitor Regularly:
- ืืืืจ ื ืืืืจ ืืืฉืื ืืืืืช SAML
- ืกืงืืจ ืชืืจืืื ืคืงืืขืช ืชืขืืืืช
- ื ืืจ ืฉืื ืืืื ืืงืื ืคืืืืจืฆืืืช ื-IdP
Documentation:
- ืชืืืง ืชืืขืื ืฉื ืงืื ืคืืืืจืฆืืืช SAML
- ืชืขื ืื ืงืื ืคืืืืจืฆืื ืืืชืืืช ืืืฉืืช ืื ืคืชืจืื ืืช ืขืงืืคื
- ืฉืืืจ ืคืจืื ืงืฉืจ ืืื ืืื ื-IdP
Proactive Maintenance
Certificate Management:
- ื ืืจ ืชืืจืืื ืคืงืืขืช ืชืขืืืืช
- ืชืื ื ื ืืืื ืกืืืื ืชืขืืืืช (certificate rotation)
- ืืืืง ืขืืืื ื ืชืขืืืืช ืืคื ื ืคืงืืขืช ืืชืืงืฃ
Configuration Reviews:
- ืกืงืืจ ืืืืคื ืงืืืข ืืช ืงืื ืคืืืืจืฆืืืช SAML
- ืืืช ืฉืืืืจืืช ื-IdP ื ืฉืืจืืช ืขืืื ืืืช
- ืขืืื ืชืืขืื ืืืฉืจ ืืืืฆืขืื ืฉืื ืืืื
ืฉืืืืช ืขืืืื ืืืืืฆืืช ืืืืืื 
SAML implementation security is critical for protecting your organization's authentication infrastructure and user data.
SAML Security Fundamentals
Digital Signatures
SAML Response Signing:
- All SAML responses must be digitally signed by the IdP
- FastComments validates signatures using the IdP's public certificate
- Prevents tampering with authentication assertions
- Ensures responses originate from trusted IdP
Certificate Validation:
- Certificates are validated against configured IdP certificate
- Certificate chain validation ensures trust hierarchy
- Expired or invalid certificates are rejected
- Certificate rotation should be planned and coordinated
Assertion Security
Audience Restriction:
- SAML assertions include audience restriction (SP Entity ID)
- Prevents assertion replay attacks against other service providers
- FastComments validates audience matches tenant configuration
- Reject assertions intended for other applications
Time-Based Validation:
- Assertions include time-based validity windows
NotBeforeandNotOnOrAfterconditions are enforced- Prevents replay of old assertions
- Clock skew tolerance is configurable
Communication Security
Transport Layer Security
HTTPS Requirements:
- All SAML communication occurs over HTTPS
- TLS 1.2 or higher is required
- Certificate validation prevents man-in-the-middle attacks
- Secure communication protects sensitive authentication data
Endpoint Security:
- SAML endpoints use secure, authenticated connections
- IdP and SP endpoints must support modern TLS
- Weak cipher suites are rejected
- Certificate pinning may be implemented for additional security
Data Protection
Sensitive Data Handling:
- SAML assertions may contain sensitive user information
- Data is encrypted in transit and processed securely
- Temporary storage is minimized and secured
- User data retention follows privacy requirements
Assertion Encryption (Optional):
- SAML assertions can be encrypted for additional security
- Useful when assertions traverse untrusted networks
- Requires private key configuration in FastComments
- Most deployments rely on TLS encryption instead
Authentication Security
Single Sign-On Benefits
Centralized Authentication:
- Reduces password-related security risks
- Enables consistent security policies
- Provides single point for access control
- Facilitates compliance with security standards
Session Management:
- SAML enables secure session establishment
- Session timeouts can be centrally managed
- Single logout capabilities (if supported by IdP)
- Reduces credential exposure across applications
Multi-Factor Authentication
IdP MFA Integration:
- MFA requirements enforced by identity provider
- FastComments inherits IdP security policies
- Supports various MFA methods (SMS, authenticator apps, hardware tokens)
- Centralized MFA policy management
Access Control Security
Role-Based Access Control
Principle of Least Privilege:
- Assign minimum necessary permissions to users
- Use specific roles rather than overly broad permissions
- Regular review of role assignments
- Remove access when no longer needed
Role Validation:
- SAML role attributes are validated and sanitized
- Unknown roles are ignored (not rejected)
- Role changes are applied immediately upon login
- Audit trail maintained for role changes
Administrative Access
Admin Role Protection:
- Administrative roles require explicit assignment
- Monitor administrative access and activities
- Implement approval workflows for sensitive role assignments
- Regular auditing of administrative accounts
Identity Provider Security
IdP Configuration Security
Certificate Management:
- Use strong certificates (RSA-2048 or higher)
- Implement proper certificate rotation procedures
- Secure private key storage at IdP
- Monitor certificate expiration dates
Access Control:
- Restrict who can modify SAML application configuration
- Implement approval processes for configuration changes
- Monitor configuration changes and access
- Regular security reviews of IdP configuration
Attribute Security
Sensitive Attribute Protection:
- Minimize sensitive data in SAML attributes
- Use role identifiers rather than sensitive group names
- Encrypt assertions containing sensitive information
- Follow data minimization principles
Attribute Validation:
- Validate all incoming SAML attributes
- Sanitize attribute values to prevent injection attacks
- Implement attribute value restrictions where appropriate
- Log suspicious or malformed attributes
Monitoring and Auditing
Authentication Monitoring
Failed Authentication Tracking:
- Monitor failed SAML authentication attempts
- Alert on unusual authentication patterns
- Track certificate validation failures
- Log configuration-related errors
Success Monitoring:
- Monitor successful authentication rates
- Track user role assignments and changes
- Verify normal authentication flow timing
- Monitor for unexpected user creation
Security Event Logging
Audit Trail Maintenance:
- Log all SAML authentication events
- Maintain records of configuration changes
- Track administrative actions and access
- Store logs securely with tamper protection
Alert Configuration:
- Set up alerts for security-relevant events
- Monitor for certificate expiration
- Alert on repeated authentication failures
- Notify of unusual administrative activity
Compliance Considerations
Data Privacy
User Data Protection:
- Follow GDPR, CCPA, and relevant privacy regulations
- Minimize personal data collection and processing
- Provide user control over personal information
- Implement data retention and deletion policies
Cross-Border Data Transfer:
- Consider data residency requirements
- Implement appropriate safeguards for international transfers
- Document data flows between IdP and FastComments
- Ensure compliance with local privacy laws
Security Standards
Industry Standards Compliance:
- Follow SAML 2.0 security best practices
- Implement NIST authentication guidelines
- Consider SOC 2 and ISO 27001 requirements
- Regular security assessments and penetration testing
Incident Response
Security Incident Procedures
Breach Response:
- Immediate containment of security incidents
- Notification of affected parties
- Investigation and root cause analysis
- Implementation of corrective measures
Certificate Compromise:
- Immediate revocation of compromised certificates
- Emergency certificate rotation procedures
- User notification and re-authentication requirements
- Security review and strengthening measures
Business Continuity
Backup Authentication Methods:
- Maintain alternative authentication methods
- Document emergency access procedures
- Regular testing of backup authentication
- Clear communication during outages
Disaster Recovery:
- Document SAML configuration for disaster recovery
- Maintain copies of certificates and configuration
- Test recovery procedures regularly
- Coordinate with IdP disaster recovery plans
Security Best Practices Summary
Implementation Security
- Use Strong Certificates: RSA-2048 or higher with proper validation
- Enforce HTTPS: All communication over secure, encrypted channels
- Validate All Input: Sanitize and validate all SAML attributes
- Monitor Continuously: Implement comprehensive monitoring and alerting
- Regular Reviews: Conduct periodic security reviews and updates
Operational Security
- Principle of Least Privilege: Assign minimal necessary permissions
- Regular Auditing: Review access, roles, and configurations regularly
- Documentation: Maintain current security documentation
- Training: Ensure staff understand SAML security requirements
- Incident Preparedness: Have incident response procedures ready
Organizational Security
- Change Management: Implement controlled change processes
- Separation of Duties: Divide administrative responsibilities
- Regular Updates: Keep all systems and certificates current
- Vendor Management: Monitor security of IdP and related services
- Compliance Monitoring: Ensure ongoing compliance with regulations
ืืืืืช SAML ืืกืคืง ืืืืื ืืจืืช ืืจืืื ืื ืืืืืืืช ืืฉืชืืฉ ืืืงื ืืืฉืชืืฉื FastComments. ืขื ืงืื ืคืืืืจืฆืื ื ืืื ื ืืืืืงืืช ื ืืืชืืช, SAML ืืืคืฉืจ ืื ืืกื ืืืืื ืืืืืืืช ืฉืืฉืชืืืช ืขื ืชืฉืชืืช ืืืืืช ืืงืืืืช ืฉืืื ืชืื ืฉืืืจื ืขื ืืงืจืืช ืืืืื ืืืงืืช ืืืืืืืช ืืืงืืจืช ืืงืืคืืช.