# Debug and fixing common DiscourseConnect issues

**URL:** https://meta.discourse.org/t/debug-and-fixing-common-discourseconnect-issues/103496
**Category:** Integrations
**Tags:** sso, discourseconnect, how-to
**Created:** [December 4, 2018, 7:44pm UTC](https://meta.discourse.org/t/debug-and-fixing-common-discourseconnect-issues/103496 "2018-12-04T19:44:22Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [December 4, 2018, 7:44pm UTC](https://meta.discourse.org/t/debug-and-fixing-common-discourseconnect-issues/103496/1 "2018-12-04T19:44:22Z")

</div>

As the administrator of a forum that is using [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true), you may occasionally get reports from users that when they attempt to login to the forum, they are greeted by an error message. For example: “There is a problem with your account. Please contact the site’s administrator.”

 ![20%20AM](https://global.discourse-cdn.com/meta/original/3X/3/c/3cbf977d351e17ff7404bb2f5e26565a3022d210.png)

### Enabling verbose [discourse connect](https://meta.discourse.org/t/13045?silent=true) logging

To debug the issue, the first thing you need to do is to enable the ‘verbose [discourse connect](https://meta.discourse.org/t/13045?silent=true) logging’ Site Setting on Discourse. If this setting was previously enabled, you can go directly to your site logs at Admin/Logs/Error Logs. If the setting was not previously enabled, you will need to ask the user to attempt logging in again so that you can generate a log entry of their failing login attempt.

### Reading the log entry

Go to Admin/Logs/Error Logs and look for a recent log entry that starts with `Verbose SSO log: Record was invalid`. If you have trouble finding the entry, enter ‘Record was invalid’ into the search box at the bottom of the logs page. Click on the log entry. Then click on the ‘info’ tab on the logs toolbar:

 ![image](https://global.discourse-cdn.com/meta/original/4X/1/9/d/19d0f1a267e08ff4c375503e06087567b9ffd9f4.png)

The information that you will need is the reason (given in the log entry), and the `email` and `external_id` (found in the info section.)

### Solving require\_activation [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true) login issues

A common issue with SSO login is: `Record was invalid: User {:primary_email=>"has already been taken"}`.

This can happen when the `require_activation` parameter in the SSO payload is set to `true` and the user has an existing account on Discourse that either does not yet have a `single_sign_on_record` associated with it, or has a `single_sign_on_record`, but the record’s `external_id` doesn’t match the `external_id` of the user who is trying to login.

To confirm this, enter your forum’s Rails console, and search for a user who has the email address that was used in the failed SSO login attempt:

```plaintext
u = User.find_by_email('sally@example.com')

```

Now, check if there is a `single_sign_on_record` for this user:

```plaintext
sso_record = u.single_sign_on_record

```

If the user exists on your forum, but does not have an SSO record, you can create a record for them using the values from the SSO log:

```plaintext
SingleSignOnRecord.create!(user_id: 2, external_id: 2, external_email: 'sally@example.com', last_payload: '')

```

The user should now be able to login.

If there is an existing SSO record for the user, but its `external_id` doesn’t match the `external_id` from the failed login attempt, you will need to look into why this has happened. One way this can happen is if a user’s account has been deleted and then recreated on the SSO provider site. In this case, you can update the SSO record to use the new `external_id`:

```plaintext
sso_record.external_id = <failed-sso-login-record-external_id>
sso_record.save!

```

The user should now be able to login.

If you are using the [WP Discourse](https://github.com/discourse/wp-discourse) plugin and running into the issue outlined above, see [Validate Email Addresses with the WP Discourse plugin](https://meta.discourse.org/t/how-to-validate-email-addresses-with-the-wp-discourse-plugin/130085) for details about how to resolve the issue without having to access the Rails console.

> Last edited by @JammyDodger 2024-05-26T07:21:30Z
> 
> > **Check document**
> >
> > Perform check on document:

---

_[View the full topic](https://meta.discourse.org/t/debug-and-fixing-common-discourseconnect-issues/103496)._
