Trello (Atlassian)
Ce guide vous explique comment configurer l'authentification unique (SSO) entre SmartLink et Trello en utilisant SAML 2.0 via Atlassian Access.
Prérequis
- Abonnement Trello Enterprise avec Atlassian Access
- Accès administrateur à Atlassian Admin
- Domaine vérifié dans Atlassian
- Application configurée dans SmartLink avec SAML2
Note : Le SSO pour Trello nécessite Atlassian Access, disponible uniquement avec les plans Enterprise.
Configuration dans SmartLink
1. Créer l'application
- Connectez-vous à SmartLink en tant qu'administrateur
- Allez dans Applications → Ajouter
- Créez une nouvelle application :
- Nom : Trello
- URL :
https://trello.com - Description : Gestion de projets et collaboration
- Icône : Choisissez l'icône Trello
2. Configurer SAML2
- Dans l'onglet Authentification
- Sélectionnez SAML2
- Configurez les paramètres suivants :
- Entity ID :
https://[votre-smartlink].link.vaultys.org/[appid] - ACS URL :
https://auth.atlassian.com/login/callback - Format NameID :
emailAddress - App ID :
[appid](identifiant unique généré automatiquement)
- Entity ID :
3. Récupérer les métadonnées
Notez les URLs suivantes :
- Métadonnées IdP :
https://[votre-smartlink].link.vaultys.org/api/saml2/[appid]/metadata - SSO URL :
https://[votre-smartlink].link.vaultys.org/api/saml2/sso/[appid] - SLO URL :
https://[votre-smartlink].link.vaultys.org/api/saml2/slo/[appid] - Certificat X.509 : Téléchargez depuis SmartLink
Configuration dans Atlassian Access
1. Accéder à Atlassian Admin
- Connectez-vous à admin.atlassian.com
- Sélectionnez votre organisation
- Allez dans Security → Identity providers
2. Ajouter un fournisseur d'identité SAML
- Cliquez sur Add identity provider
- Sélectionnez SAML single sign-on
- Configurez les informations du fournisseur d'identité :
Configuration manuelle
- Identity provider Entity ID :
[appid] - SSO URL :
https://[votre-smartlink].link.vaultys.org/api/saml2/sso/[appid] - Public x509 certificate : Collez le certificat depuis SmartLink
Ou via URL de métadonnées
- Import from metadata URL :
https://[votre-smartlink].link.vaultys.org/api/saml2/[appid]/metadata
3. Configuration des attributs SAML
Configurez le mapping des attributs :
<AttributeStatement>
<Attribute Name="email">
<AttributeValue>user.email</AttributeValue>
</Attribute>
<Attribute Name="displayName">
<AttributeValue>user.displayName</AttributeValue>
</Attribute>
<Attribute Name="firstName">
<AttributeValue>user.firstName</AttributeValue>
</Attribute>
<Attribute Name="lastName">
<AttributeValue>user.lastName</AttributeValue>
</Attribute>
</AttributeStatement>
4. Configuration des domaines
- Dans Domains, ajoutez votre domaine d'entreprise
- Vérifiez le domaine via DNS (TXT record)
- Activez Enforce SSO pour ce domaine
5. Attribution des utilisateurs
- Dans Users, configurez :
- Auto-provisioning : Activé
- Just-in-time provisioning : Activé
- Update user details on login : Activé
Configuration des groupes et permissions
Synchronisation des groupes
Dans SmartLink, configurez les assertions SAML pour inclure les groupes :
<Attribute Name="groups">
<AttributeValue>smartlink-trello-admins</AttributeValue>
<AttributeValue>smartlink-trello-users</AttributeValue>
</Attribute>
Mapping des permissions Trello
Dans Atlassian Access :
- Directory → Groups
- Créez les mappings :
smartlink-trello-admins→ Workspace Adminsmartlink-trello-users→ Normal Usersmartlink-trello-guests→ Guest User
Configuration des workspaces
Pour assigner automatiquement les utilisateurs aux bons workspaces :
- Products → Trello
- Workspace access
- Configurez l'accès par groupe
Configuration des politiques de sécurité
Session et authentification
- Dans Atlassian Access → Policies
- Configurez :
- Session duration : 8 heures
- Require re-authentication : Après 30 jours
- Mobile session : 90 jours
Restrictions IP (optionnel)
{
"ip_allowlist": [
"203.0.113.0/24",
"198.51.100.0/24"
],
"enforce_for_admins": true
}
Test de la configuration
1. Test de connexion
- Ouvrez une fenêtre de navigation privée
- Allez sur trello.com/login
- Entrez votre email d'entreprise
- Vous devez être redirigé vers SmartLink
- Authentifiez-vous avec vos identifiants SmartLink
- Vous devez être connecté à Trello
2. Test avec l'application mobile
- Ouvrez l'application Trello mobile
- Tapez sur Log in
- Entrez votre email d'entreprise
- L'application ouvre un navigateur pour l'authentification
- Après connexion, vous êtes redirigé vers l'application
3. Vérification des permissions
# Via l'API Trello
curl -X GET "https://api.trello.com/1/members/me" \
-H "Authorization: OAuth oauth_consumer_key=\"{key}\", oauth_token=\"{token}\""
Intégration avec Power-Ups
Configuration des Power-Ups avec SSO
Pour les Power-Ups personnalisés utilisant l'authentification :
// Configuration Power-Up avec SSO
const t = window.TrelloPowerUp.iframe();
t.authorize({
url: 'https://[votre-smartlink].link.vaultys.org/api/oidc/[appid]/authorize',
clientId: 'trello-powerup-xxxxxx',
scope: 'read,write',
expiration: '30days',
name: 'Mon Power-Up'
});
Automatisation avec Butler
Configuration Butler avec SSO
Les automatisations Butler continuent de fonctionner avec SSO. Pour les commandes personnalisées :
when a card is moved to list "Done" by anyone,
post comment "@{username} a terminé cette tâche"
Dépannage
Erreur "SAML response validation failed"
Problème : La réponse SAML n'est pas valide
Solution :
- Vérifiez le certificat X.509
- Assurez-vous que l'Entity ID correspond dans SmartLink :
[appid] - Vérifiez les logs dans Atlassian Admin :
- Security → Authentication log
Erreur "User not found in directory"
Problème : L'utilisateur n'est pas provisionné
Solution :
- Vérifiez que le domaine email est vérifié
- Activez Just-in-time provisioning
- Vérifiez l'attribut email dans l'assertion SAML
Les groupes ne sont pas synchronisés
Problème : Les permissions de groupe ne s'appliquent pas
Solution :
- Vérifiez le format de l'attribut
groupsdans l'assertion SAML - Dans Atlassian Access, vérifiez Directory → Groups
- Assurez-vous que les noms de groupes correspondent exactement
Erreur sur mobile "Authentication failed"
Problème : L'authentification échoue sur l'application mobile
Solution :
- Assurez-vous que le certificat SSL est valide
- Vérifiez que l'URL de callback est autorisée
- Essayez de vous déconnecter complètement et reconnecter
Sécurité
Recommandations
- Enforce SSO : Activez l'application du SSO pour tous les utilisateurs
- Domain verification : Vérifiez tous vos domaines d'entreprise
- Session management : Configurez des durées de session appropriées
- Audit logs : Surveillez régulièrement les logs d'authentification
- API tokens : Gérez les tokens API séparément du SSO
Configuration de la conformité
{
"compliance_settings": {
"data_residency": "EU",
"encryption_at_rest": true,
"audit_log_retention": "365 days",
"gdpr_compliant": true
}
}
Sauvegarde et récupération
En cas de problème avec SSO :
- Les administrateurs peuvent utiliser le recovery email
- Atlassian Access maintient un accès d'urgence
- Les API tokens restent valides indépendamment du SSO
Intégration avec d'autres produits Atlassian
Jira et Confluence
La même configuration SSO s'applique automatiquement à :
- Jira Software/Service Management
- Confluence
- Bitbucket
- Opsgenie
Configuration unifiée
atlassian_products:
- trello:
enabled: true
default_workspace: "entreprise"
- jira:
enabled: true
default_project: "PROJ"
- confluence:
enabled: true
default_space: "DOCS"
Migration des utilisateurs existants
Script de migration
# Script pour migrer les utilisateurs vers SSO
import requests
def migrate_users_to_sso(domain):
# Récupérer tous les utilisateurs
users = get_all_users(domain)
for user in users:
if user['email'].endswith(f'@{domain}'):
# Activer SSO pour l'utilisateur
enable_sso_for_user(user['id'])
# Envoyer email de notification
send_migration_email(user['email'])