Authentication Methods
No Authentication
For public endpoints with no auth required.Bearer Token
API key in Authorization header.Basic Authentication
Username:password in header.API Key (Custom Header)
API key in custom header.OAuth 2.0
Dynamic token exchange and refresh.Configuring Authentication
REST Connector
- Connectors > Select connector
- Click Authentication
- Choose method
- Enter credentials
- Click Test
- Click Save
MCP Registry
- Connectors > Select connector
- View required credentials (shown during setup)
- Enter API key or authorize OAuth
- Connector tests automatically
Custom MCP
- Connectors > Select connector
- Click Authentication
- Set headers or environment variables
- Provide credentials
- Test connection
Encryption
At Rest
All credentials encrypted using AES-256-GCM:- Encryption key managed by Noorle
- Credentials never logged
- Safe to store in configuration
In Transit
All connections use HTTPS/TLS:- End-to-end encryption
- Certificate validation
- No credential exposure
Display
Never shows full credentials:- Display only last 6 characters
- Example:
sk-abc123... - Full key shown only when first created
OAuth 2.0 Flow
OAuth 2.0 handles credential exchange securely:
Benefits:
- User never shares password
- Credentials stay on service
- Automatic refresh
- Revocable at any time
Scope Management
Scopes control what connector can access:- ✓ Access repositories
- ✓ Read email addresses
- ✗ Delete repositories (not requested)
- ✗ Modify settings (not requested)
Credential Rotation
Rotate Bearer Token
- Generate new token from service
- In connector, click Edit Authentication
- Update token value
- Test new token works
- Save
Rotate OAuth Token
- Connector auto-rotates OAuth tokens
- No action needed
- Old token revoked automatically
- New token fetched before expiry
Rotate API Keys
- Generate new key from service
- In connector, click Edit Authentication
- Update key value
- Test works
- Optionally disable old key at service
Testing Authentication
Always test after configuring:- Connectors > Select connector
- Click Test
- Select operation/tool
- Provide sample input
- Execute
- Verify success
- Credentials are correct
- Token hasn’t expired
- Key has required permissions
- Service is online
Common Auth Issues
”Invalid Credentials”
- Double-check API key or token
- Verify correct auth type
- Check if secret characters copied correctly
- Try regenerating token/key
”Insufficient Permissions”
- OAuth scopes may be too limited
- Re-authorize with more scopes
- Check service role/tier
- Verify account permissions
”Token Expired”
- OAuth tokens auto-refresh (should be automatic)
- Bearer tokens: manually update
- Check if service revoked access
- Re-authorize OAuth flow
”Authentication URL Not Found”
- OAuth endpoints may have changed
- Check service documentation
- Verify correct provider configuration
- Try custom OAuth setup
Security Best Practices
API Keys
- Treat like passwords
- Store in secret manager, not code
- Rotate regularly (quarterly)
- Use minimum scope/permissions
- Disable unused keys immediately
OAuth
- Review scopes before authorizing
- Revoke access if no longer needed
- Check authorized apps regularly
- Only use for necessary integrations
Multi-factor Authentication
Enable 2FA on services with sensitive integrations:- GitHub
- Stripe
- Cloud services
Audit Log
Monitor who uses connectors:- Connectors > Select connector
- View Activity tab
- Check recent usage
- Alert on suspicious activity
Credential Deletion
To completely remove credentials:- Delete the connector entirely
- Credentials removed
- Service revoked (if OAuth)
- Cannot undo
- Update to different auth method
- Old credentials replaced
- Previous method no longer used
- Still cannot undo
Integration-Specific Auth
Stripe
- Type: Bearer
- Token:
sk_live_...orsk_test_... - Source: https://dashboard.stripe.com/account/apikeys
GitHub
- Type: Bearer
- Token: Personal access token from https://github.com/settings/tokens
- Scopes:
repo,read:org
Slack
- Type: OAuth 2.0 or Bearer
- OAuth scopes:
chat:write,channels:read - Token: Xoxb-… (bot token)