feat(auth): add IAS ECP SSO
Some checks failed
State Corp Backend CI/CD / Quality gate (push) Failing after 1m46s
State Corp Backend CI/CD / Build linux/amd64 images once (push) Has been skipped
State Corp Backend CI/CD / Release dev (push) Has been skipped
State Corp Backend CI/CD / Refresh and release internal main (push) Has been skipped
State Corp Backend CI/CD / Release customer main (push) Has been skipped

This commit is contained in:
Aleksandr Meshchryakov
2026-09-21 16:29:31 +02:00
parent 78412f9e3b
commit 528307e452
16 changed files with 888 additions and 15 deletions

View File

@@ -0,0 +1,64 @@
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
("user", "0008_auto_20260328_1630"),
]
operations = [
migrations.CreateModel(
name="SsoIdentity",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("issuer", models.CharField(max_length=64, verbose_name="issuer")),
(
"subject",
models.CharField(max_length=255, verbose_name="external user id"),
),
(
"last_authenticated_at",
models.DateTimeField(verbose_name="last authenticated at"),
),
(
"created_at",
models.DateTimeField(auto_now_add=True, verbose_name="created at"),
),
(
"updated_at",
models.DateTimeField(auto_now=True, verbose_name="updated at"),
),
(
"user",
models.OneToOneField(
on_delete=django.db.models.deletion.CASCADE,
related_name="sso_identity",
to=settings.AUTH_USER_MODEL,
verbose_name="user",
),
),
],
options={
"verbose_name": "SSO identity",
"verbose_name_plural": "SSO identities",
"db_table": "user_sso_identities",
},
),
migrations.AddConstraint(
model_name="ssoidentity",
constraint=models.UniqueConstraint(
fields=("issuer", "subject"),
name="user_sso_identity_issuer_subject_unique",
),
),
]