(core) Adding GristConnect login system

Summary:
New login system to allow simple SSO flow that is based on Discourse description that is available at:
https://meta.discourse.org/t/discourseconnect-official-single-sign-on-for-discourse-sso/13045

Test Plan: New core test.

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D3418
This commit is contained in:
Jarosław Sadziński
2022-05-18 12:25:14 +02:00
parent cf23a2d1ee
commit 0ab9e4a6a0
16 changed files with 245 additions and 31 deletions

View File

@@ -0,0 +1,22 @@
import {MigrationInterface, QueryRunner, TableColumn, TableIndex} from "typeorm";
export class UserConnectId1652277549983 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.addColumn("users", new TableColumn({
name: "connect_id",
type: 'varchar',
isNullable: true,
isUnique: true,
}));
await queryRunner.createIndex("users", new TableIndex({
name: "users_connect_id",
columnNames: ["connect_id"],
isUnique: true
}));
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.dropIndex("users", "users_connect_id");
await queryRunner.dropColumn("users", "connect_id");
}
}