Note that there are some explanatory texts on larger screens.

plurals
  1. POAuthenticate against Drupal users database table from Django application
    primarykey
    data
    text
    <p>I'm working with:</p> <p><strong>A)</strong> A large Drupal 7.23 application running at <a href="https://sitename.com" rel="nofollow">https://sitename.com</a> using a MySQL database with thousands of users, around 30 of which are Staff.</p> <p><strong>B)</strong> A small Django 1.3.7 application running at <a href="http://dj.sitename.com" rel="nofollow">http://dj.sitename.com</a> using a PostgreSQL database with few (only the Drupal app's staff) users, <strong>who need to be able to login to this Django app using their existing Drupal credentials</strong>.</p> <p>The workflow would be something like this:</p> <ol> <li><p>Staff users are manually created with identical usernames in each of the applications.</p></li> <li><p>A staff user goes to dj.sitename.com and inputs the same username and password of their account that was created at sitename.com, and clicks submit. Django checks the username and password against the users table in the Drupal MySQL database and compares it with the details in the Django users table. If they match, the user is logged in.</p></li> <li><p>When a staff user is already logged into the Drupal app and visits the Django app at dj.sitename.com, they are automatically logged in, and vice-versa.</p></li> <li><p>When a staff user logs out from the Django app, they are logged out from Drupal, too, and vice-versa.</p></li> <li><p>When a user changes their password in either Drupal or Django applications, it is automatically changed in both systems.</p></li> </ol> <p>What is the simplest way to accomplish this?</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload