Вообщем вариант конечно не единственный, но самый обычный, так же или очень похоже в гугле.
После авторизации (разовое событие) на сервисе хранится кука подписанная секретным ключём из ид пользователя и даты создания/обновления. Когда он приходит с другого сервиса, распознаётся кто пришёл и сверяется залогинен ли он. Если нет, то предлагается залогинится.
Если пользователь ещё не авторизован на этом сервисе, отправляется в авторизационный сервис, и после успешной процедуры по данным из урла обратно, и из того же урла берётся кука и сохраняется. В этом случаее процедура логина и авторизации совмещена.
"Все свои" знают что зашёл авторизованный пользователь. Если он не разлогинелся то сессия через какое-то время закончится (дата в куке устареет). Пока пользователь лазит по сервису дату в куке можно править, но саму куку не удалять.
Авторизационные данные при этом хранятся централизованно и обращаться к ним надо по другому каналу. Для этого не надо изобретать велосипед
https://developers.google.com/bigquery/.
А в Джанго делаешь обёртку-суперкласс, который подобные ситуации разруливает. Как-то так.