Supprimer sso avec l'API

Comment supprimer un enregistrement SSO via l’API ? J’utilise Discourse et je modifie l’external_id. Comment puis-je effacer les anciens enregistrements de cet utilisateur sans perdre son compte ni ses publications ?

Peut-être supprimez-vous simplement tous les enregistrements SSO une fois depuis la console Rails et laissez-les se reconnecter via leur adresse e-mail ? Je ne me souviens plus avec certitude de la table que vous recherchez, mais cela pourrait être quelque chose comme

 UserAssociatedAccount.all.destroy_all

Je pense qu’il existe d’autres sujets traitant de ce problème. Avez-vous cherché ?

1 « J'aime »

L’external_id transmis par le fournisseur SSO est censé ne jamais changer. Si cela est possible, évitez de modifier les valeurs external_id de vos utilisateurs.

À condition que vous ne définissiez pas le paramètre SSO require_activation à true, vous pouvez supprimer tous les enregistrements SSO comme l’a mentionné Jay. Pour ce faire, accédez à la console de votre site et exécutez :

SingleSignOnRecord.destroy_all

Avant d’exécuter cette commande, assurez-vous que le paramètre require_activation n’est pas défini à true dans la charge utile SSO. Si ce paramètre est défini, les utilisateurs ne seront pas retrouvés via leur adresse e-mail lors de leur prochaine connexion au site. Au lieu de cela, ils recevront une erreur lors de leur tentative de connexion.

Si le paramètre require_activation n’est pas défini à true, les utilisateurs seront retrouvés via leur adresse e-mail lors de leur prochaine connexion à Discourse. Un nouvel enregistrement SSO sera alors créé pour eux. Si les adresses e-mail de certains utilisateurs ne sont pas synchronisées entre votre site fournisseur SSO et Discourse, ils rencontreront des problèmes lors de leur prochaine connexion à Discourse. Vous trouverez des détails sur la résolution de ces problèmes ici : Debug and fixing common DiscourseConnect issues.

Si vous comptez exécuter la commande ci-dessus, assurez-vous de créer une sauvegarde de la base de données de votre site avant de lancer la commande. En cas de problème, vous pourrez restaurer le fichier de sauvegarde.

3 « J'aime »

Mon forum Discourse est au plan STANDARD. Est-il possible d’avoir accès à la console Rails avec ce plan ? Si oui, comment dois-je procéder ?

Envoyez un e-mail à support@discourse.org ou @support pour exécuter la commande ci-dessus.

3 « J'aime »