feat: link local library
This commit is contained in:
@@ -0,0 +1,243 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-13 09:06
|
||||
|
||||
from django.db import migrations, models
|
||||
import spid_cie_oidc.entity.models
|
||||
import spid_cie_oidc.entity.validators
|
||||
import uuid
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = []
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="FederationEntityConfiguration",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
(
|
||||
"uuid",
|
||||
models.UUIDField(default=uuid.uuid4, editable=False, unique=True),
|
||||
),
|
||||
(
|
||||
"sub",
|
||||
models.URLField(
|
||||
help_text="URL that identifies this Entity in the Federation. This value and iss are the same in the Entity Configuration.",
|
||||
max_length=255,
|
||||
),
|
||||
),
|
||||
(
|
||||
"default_exp",
|
||||
models.PositiveIntegerField(
|
||||
default=33,
|
||||
help_text="how many minutes from now() an issued statement must expire",
|
||||
),
|
||||
),
|
||||
(
|
||||
"default_signature_alg",
|
||||
models.CharField(
|
||||
default="RS256",
|
||||
help_text="default signature algorithm, eg: RS256",
|
||||
max_length=16,
|
||||
),
|
||||
),
|
||||
(
|
||||
"authority_hints",
|
||||
models.JSONField(
|
||||
blank=True,
|
||||
default=list,
|
||||
help_text="only required if this Entity is an intermediary",
|
||||
),
|
||||
),
|
||||
(
|
||||
"jwks",
|
||||
models.JSONField(
|
||||
default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks,
|
||||
help_text="a list of public keys",
|
||||
),
|
||||
),
|
||||
(
|
||||
"trust_marks",
|
||||
models.JSONField(
|
||||
blank=True,
|
||||
default=list,
|
||||
help_text="which trust marks MUST be exposed in its entity configuration",
|
||||
),
|
||||
),
|
||||
(
|
||||
"trust_mark_issuers",
|
||||
models.JSONField(
|
||||
blank=True,
|
||||
default=dict,
|
||||
help_text='Only usable for Trust Anchors and intermediates. Which issuers are allowed to issue trust marks for the descendants. Example: {"https://www.spid.gov.it/certification/rp": ["https://registry.spid.agid.gov.it", "https://intermediary.spid.it"],"https://sgd.aa.it/onboarding": ["https://sgd.aa.it", ]}',
|
||||
),
|
||||
),
|
||||
(
|
||||
"metadata",
|
||||
models.JSONField(
|
||||
default=dict,
|
||||
help_text='federation_entity metadata, eg: {"federation_entity": { ... },"openid_provider": { ... },"openid_relying_party": { ... },"oauth_resource": { ... }}',
|
||||
validators=[
|
||||
spid_cie_oidc.entity.validators.validate_entity_metadata
|
||||
],
|
||||
),
|
||||
),
|
||||
(
|
||||
"is_active",
|
||||
models.BooleanField(
|
||||
default=False,
|
||||
help_text="If this configuration is active. At least one configuration must be active",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Federation Entity Configuration",
|
||||
"verbose_name_plural": "Federation Entity Configurations",
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="PublicJwk",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
(
|
||||
"kid",
|
||||
models.CharField(
|
||||
help_text="unique code that identifies this jwks. ",
|
||||
max_length=1024,
|
||||
unique=True,
|
||||
),
|
||||
),
|
||||
(
|
||||
"jwk",
|
||||
models.JSONField(
|
||||
default=dict,
|
||||
help_text="Public jwk",
|
||||
validators=[
|
||||
spid_cie_oidc.entity.validators.validate_public_jwks
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Public JWKs",
|
||||
"verbose_name_plural": "Public JWKs",
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="TrustChain",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
(
|
||||
"sub",
|
||||
models.URLField(
|
||||
help_text="URL that identifies this Entity in the Federation. ",
|
||||
max_length=255,
|
||||
),
|
||||
),
|
||||
(
|
||||
"type",
|
||||
models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("federation_entity", "federation_entity"),
|
||||
("openid_relying_party", "openid_relying_party"),
|
||||
("openid_provider", "openid_provider"),
|
||||
("oauth_resource", "oauth_resource"),
|
||||
],
|
||||
default="openid_provider",
|
||||
help_text="OpenID Connect Federation entity type",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
("exp", models.DateTimeField()),
|
||||
("iat", models.DateTimeField()),
|
||||
(
|
||||
"chain",
|
||||
models.JSONField(
|
||||
blank=True,
|
||||
default=list,
|
||||
help_text="A list of entity statements collected during the metadata discovery",
|
||||
),
|
||||
),
|
||||
(
|
||||
"resultant_metadata",
|
||||
models.JSONField(
|
||||
default=dict,
|
||||
help_text="The final metadata applied with the metadata policy built over the chain",
|
||||
),
|
||||
),
|
||||
(
|
||||
"parties_involved",
|
||||
models.JSONField(
|
||||
blank=True,
|
||||
default=list,
|
||||
help_text="subjects involved in the metadata discovery",
|
||||
),
|
||||
),
|
||||
(
|
||||
"status",
|
||||
models.CharField(
|
||||
choices=[
|
||||
("unreachable", "unreachable"),
|
||||
("valid", "valid"),
|
||||
("signature_failed", "signature_failed"),
|
||||
("not_valid", "not_valid"),
|
||||
("unknown", "unknown"),
|
||||
("expired", "expired"),
|
||||
],
|
||||
default=False,
|
||||
help_text="Status of this trust chain, on each update.",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
(
|
||||
"status_log",
|
||||
models.JSONField(blank=True, default=dict, help_text="status log"),
|
||||
),
|
||||
(
|
||||
"is_active",
|
||||
models.BooleanField(
|
||||
default=True,
|
||||
help_text="If you need to disable the trust to this subject, deacticate this",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Trust Chain",
|
||||
"verbose_name_plural": "Trust Chains",
|
||||
"unique_together": {("sub", "type")},
|
||||
},
|
||||
),
|
||||
]
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-13 11:33
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0001_initial"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="FetchedEntityStatement",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
(
|
||||
"iss",
|
||||
models.URLField(
|
||||
help_text="URL that identifies the issuer of this statement in the Federation. ",
|
||||
max_length=255,
|
||||
),
|
||||
),
|
||||
(
|
||||
"sub",
|
||||
models.URLField(
|
||||
help_text="URL that identifies this Entity in the Federation. ",
|
||||
max_length=255,
|
||||
),
|
||||
),
|
||||
("exp", models.DateTimeField()),
|
||||
("iat", models.DateTimeField()),
|
||||
(
|
||||
"statement",
|
||||
models.JSONField(default=dict, help_text="Entity statement"),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Fetched Entity Statement",
|
||||
"verbose_name_plural": "Fetched Entity Statement",
|
||||
},
|
||||
),
|
||||
]
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-13 23:02
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0002_fetchedentitystatement"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="constraints",
|
||||
field=models.JSONField(
|
||||
default=dict,
|
||||
help_text='\n{\n "naming_constraints": {\n "permitted": [\n "https://.example.com"\n ],\n "excluded": [\n "https://east.example.com"\n ]\n },\n "max_path_length": 2\n}\n',
|
||||
),
|
||||
),
|
||||
]
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-14 15:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0003_federationentityconfiguration_constraints"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="authority_hints",
|
||||
field=models.JSONField(
|
||||
blank=True,
|
||||
default=list,
|
||||
help_text="only required if this Entity is an intermediary or leaf.",
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="default_exp",
|
||||
field=models.PositiveIntegerField(
|
||||
default=2880,
|
||||
help_text="how many minutes from now() an issued statement must expire",
|
||||
),
|
||||
),
|
||||
]
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-14 23:45
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0004_alter_federationentityconfiguration_authority_hints_and_more",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="constraints",
|
||||
field=models.JSONField(
|
||||
blank=True,
|
||||
default=dict,
|
||||
help_text='\n{\n "naming_constraints": {\n "permitted": [\n "https://.example.com"\n ],\n "excluded": [\n "https://east.example.com"\n ]\n },\n "max_path_length": 2\n}\n',
|
||||
),
|
||||
),
|
||||
]
|
||||
+56
@@ -0,0 +1,56 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-22 00:15
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.utils.timezone
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0005_alter_federationentityconfiguration_constraints",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name="trustchain",
|
||||
name="resultant_metadata",
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name="trustchain",
|
||||
name="status_log",
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="trustchain",
|
||||
name="log",
|
||||
field=models.TextField(blank=True, default="", help_text="status log"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="trustchain",
|
||||
name="metadata",
|
||||
field=models.JSONField(
|
||||
blank=True,
|
||||
default=dict,
|
||||
help_text="The final metadata applied with the metadata policy built over the chain",
|
||||
null=True,
|
||||
),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="trustchain",
|
||||
name="processing_start",
|
||||
field=models.DateTimeField(
|
||||
default=django.utils.timezone.localtime,
|
||||
help_text="When the metadata discovery started for this Trust Chain. It should prevent concurrent processing for the same sub/type.",
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="trustchain",
|
||||
name="is_active",
|
||||
field=models.BooleanField(
|
||||
default=True,
|
||||
help_text="If you need to disable the trust to this subject, uncheck this",
|
||||
),
|
||||
),
|
||||
]
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-25 14:54
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0006_remove_trustchain_resultant_metadata_and_more"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterUniqueTogether(
|
||||
name="trustchain",
|
||||
unique_together=set(),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="trustchain",
|
||||
name="trust_anchor",
|
||||
field=models.ForeignKey(
|
||||
default=1,
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="spid_cie_oidc_entity.fetchedentitystatement",
|
||||
),
|
||||
preserve_default=False,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="trustchain",
|
||||
name="iat",
|
||||
field=models.DateTimeField(auto_now_add=True),
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name="trustchain",
|
||||
unique_together={("sub", "type", "trust_anchor")},
|
||||
),
|
||||
]
|
||||
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-25 14:55
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0007_alter_trustchain_unique_together_and_more"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="fetchedentitystatement",
|
||||
name="jwt",
|
||||
field=models.CharField(default="", max_length=2048),
|
||||
preserve_default=False,
|
||||
),
|
||||
]
|
||||
Vendored
+29
@@ -0,0 +1,29 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-26 18:26
|
||||
|
||||
from django.db import migrations, models
|
||||
import spid_cie_oidc.entity.models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0008_fetchedentitystatement_jwt"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="trustchain",
|
||||
name="trust_marks",
|
||||
field=models.JSONField(
|
||||
blank=True, default=list, help_text="verified trust marks"
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="jwks",
|
||||
field=models.JSONField(
|
||||
default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks,
|
||||
help_text="a list of private keys",
|
||||
),
|
||||
),
|
||||
]
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
# Generated by Django 4.0.2 on 2022-02-26 23:30
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0009_trustchain_trust_marks_and_more"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="entity_type",
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("federation_entity", "federation_entity"),
|
||||
("openid_relying_party", "openid_relying_party"),
|
||||
("openid_provider", "openid_provider"),
|
||||
("oauth_resource", "oauth_resource"),
|
||||
],
|
||||
default="openid_relying_party",
|
||||
help_text="OpenID Connect Federation entity type",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
]
|
||||
Vendored
+30
@@ -0,0 +1,30 @@
|
||||
# Generated by Django 4.0.2 on 2022-03-01 16:03
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0010_federationentityconfiguration_entity_type"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="trustchain",
|
||||
name="status",
|
||||
field=models.CharField(
|
||||
choices=[
|
||||
("unreachable", "unreachable"),
|
||||
("valid", "valid"),
|
||||
("signature_failed", "signature_failed"),
|
||||
("not_valid", "not_valid"),
|
||||
("unknown", "unknown"),
|
||||
("expired", "expired"),
|
||||
],
|
||||
default="unreachable",
|
||||
help_text="Status of this trust chain, on each update.",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
]
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
# Generated by Django 4.0.2 on 2022-03-06 22:41
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0011_alter_trustchain_status'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.DeleteModel(
|
||||
name='PublicJwk',
|
||||
),
|
||||
]
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
# Generated by Django 4.0.2 on 2022-03-13 00:41
|
||||
|
||||
from django.db import migrations, models
|
||||
import spid_cie_oidc.entity.validators
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0012_delete_publicjwk'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='federationentityconfiguration',
|
||||
name='metadata',
|
||||
field=models.JSONField(default=dict, help_text='federation_entity metadata, eg: {"federation_entity": { ... },"openid_provider": { ... },"openid_relying_party": { ... },"oauth_resource": { ... }}', validators=[spid_cie_oidc.entity.validators.validate_entity_metadata, spid_cie_oidc.entity.validators.validate_metadata_algs]),
|
||||
),
|
||||
]
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
# Generated by Django 4.0.3 on 2022-03-20 13:27
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0013_alter_federationentityconfiguration_metadata'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterUniqueTogether(
|
||||
name='trustchain',
|
||||
unique_together={('sub', 'trust_anchor')},
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='trustchain',
|
||||
name='type',
|
||||
),
|
||||
]
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
# Generated by Django 4.0.3 on 2022-03-20 13:45
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0014_alter_trustchain_unique_together_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterUniqueTogether(
|
||||
name='trustchain',
|
||||
unique_together=set(),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='trustchain',
|
||||
name='type',
|
||||
field=models.CharField(blank=True, choices=[('federation_entity', 'federation_entity'), ('openid_relying_party', 'openid_relying_party'), ('openid_provider', 'openid_provider'), ('oauth_resource', 'oauth_resource')], default='openid_provider', help_text='OpenID Connect Federation entity type', max_length=33),
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='trustchain',
|
||||
unique_together={('sub', 'type', 'trust_anchor')},
|
||||
),
|
||||
]
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
# Generated by Django 4.0.3 on 2022-03-20 14:25
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0015_alter_trustchain_unique_together_trustchain_type_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterUniqueTogether(
|
||||
name='trustchain',
|
||||
unique_together={('sub', 'trust_anchor')},
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='trustchain',
|
||||
name='type',
|
||||
),
|
||||
]
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
# Generated by Django 4.0.3 on 2022-04-23 14:48
|
||||
|
||||
from django.db import migrations, models
|
||||
import spid_cie_oidc.entity.models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0016_alter_trustchain_unique_together_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name='federationentityconfiguration',
|
||||
name='jwks',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='federationentityconfiguration',
|
||||
name='jwks_core',
|
||||
field=models.JSONField(default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks, help_text='a list of private keys for Core ops'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='federationentityconfiguration',
|
||||
name='jwks_fed',
|
||||
field=models.JSONField(default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks, help_text='a list of private keys for Federation ops'),
|
||||
),
|
||||
]
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
# Generated by Django 4.0.5 on 2022-07-03 11:35
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0017_remove_federationentityconfiguration_jwks_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='trustchain',
|
||||
name='jwks',
|
||||
field=models.JSONField(default=[], help_text='jwks of this federation entity'),
|
||||
preserve_default=False,
|
||||
),
|
||||
]
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
# Generated by Django 4.0.5 on 2022-10-18 09:08
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import spid_cie_oidc.entity.utils
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('spid_cie_oidc_entity', '0018_trustchain_jwks'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='StaffToken',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('created', models.DateTimeField(auto_now_add=True)),
|
||||
('modified', models.DateTimeField(auto_now=True)),
|
||||
('token', models.CharField(default=spid_cie_oidc.entity.utils.random_token, help_text='it will be generated automatically.', max_length=255)),
|
||||
('expire_at', models.DateTimeField(blank=True, null=True)),
|
||||
('is_active', models.BooleanField(default=True)),
|
||||
('user', models.ForeignKey(help_text='The user responsible of thi token', on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Staff Token',
|
||||
'verbose_name_plural': 'Staff Tokens',
|
||||
},
|
||||
),
|
||||
]
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 11:35
|
||||
|
||||
from django.db import migrations, models
|
||||
import spid_cie_oidc.entity.models
|
||||
import spid_cie_oidc.entity.validators
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0019_stafftoken"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="jwks_core",
|
||||
field=models.JSONField(
|
||||
blank=True,
|
||||
default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks,
|
||||
help_text="a list of private keys for Core ops",
|
||||
validators=[spid_cie_oidc.entity.validators.validate_private_jwks],
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="jwks_fed",
|
||||
field=models.JSONField(
|
||||
default=spid_cie_oidc.entity.models.FederationEntityConfiguration._create_jwks,
|
||||
help_text="a list of private keys for Federation ops",
|
||||
validators=[spid_cie_oidc.entity.validators.validate_private_jwks],
|
||||
),
|
||||
),
|
||||
]
|
||||
Vendored
+86
@@ -0,0 +1,86 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 13:12
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0020_alter_federationentityconfiguration_jwks_core_and_more",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="FederationHistoricalKey",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
(
|
||||
"kid",
|
||||
models.CharField(
|
||||
choices=[
|
||||
(0, "unspecified"),
|
||||
(1, "keyCompromise"),
|
||||
(2, "cACompromise"),
|
||||
(3, "affiliationChanged"),
|
||||
(4, "superseded"),
|
||||
(5, "cessationOfOperation"),
|
||||
(6, "certificateHold"),
|
||||
(8, "removeFromCRL"),
|
||||
(9, "privilegeWithdrawn"),
|
||||
(10, "aACompromise"),
|
||||
],
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
(
|
||||
"inactive_from",
|
||||
models.DateTimeField(
|
||||
help_text="Expired or Revocation date if revocation motivation is configured"
|
||||
),
|
||||
),
|
||||
(
|
||||
"revocation_motivation",
|
||||
models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
(0, "unspecified"),
|
||||
(1, "keyCompromise"),
|
||||
(2, "cACompromise"),
|
||||
(3, "affiliationChanged"),
|
||||
(4, "superseded"),
|
||||
(5, "cessationOfOperation"),
|
||||
(6, "certificateHold"),
|
||||
(8, "removeFromCRL"),
|
||||
(9, "privilegeWithdrawn"),
|
||||
(10, "aACompromise"),
|
||||
],
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
(
|
||||
"entity",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="spid_cie_oidc_entity.federationentityconfiguration",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Federation Historical Key",
|
||||
"verbose_name_plural": "Federation Historical Keys",
|
||||
},
|
||||
),
|
||||
]
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 14:41
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
replaces = [
|
||||
("spid_cie_oidc_entity", "0021_federationhistoricalkey"),
|
||||
("spid_cie_oidc_entity", "0022_federationhistoricalkey_jwk_and_more"),
|
||||
("spid_cie_oidc_entity", "0023_alter_federationhistoricalkey_jwk"),
|
||||
("spid_cie_oidc_entity", "0024_alter_federationhistoricalkey_kid"),
|
||||
("spid_cie_oidc_entity", "0025_alter_federationhistoricalkey_jwk"),
|
||||
("spid_cie_oidc_entity", "0026_alter_federationhistoricalkey_jwk"),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0020_alter_federationentityconfiguration_jwks_core_and_more",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="FederationHistoricalKey",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True)),
|
||||
("modified", models.DateTimeField(auto_now=True)),
|
||||
("kid", models.CharField(max_length=128)),
|
||||
(
|
||||
"inactive_from",
|
||||
models.DateTimeField(
|
||||
help_text="Expired or Revocation date if revocation motivation is configured"
|
||||
),
|
||||
),
|
||||
(
|
||||
"revocation_motivation",
|
||||
models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
(0, "unspecified"),
|
||||
(1, "keyCompromise"),
|
||||
(2, "cACompromise"),
|
||||
(3, "affiliationChanged"),
|
||||
(4, "superseded"),
|
||||
(5, "cessationOfOperation"),
|
||||
(6, "certificateHold"),
|
||||
(8, "removeFromCRL"),
|
||||
(9, "privilegeWithdrawn"),
|
||||
(10, "aACompromise"),
|
||||
],
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
(
|
||||
"entity",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="spid_cie_oidc_entity.federationentityconfiguration",
|
||||
),
|
||||
),
|
||||
("jwk", models.JSONField(default=dict, help_text="private jwk")),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "Federation Historical Key",
|
||||
"verbose_name_plural": "Federation Historical Keys",
|
||||
},
|
||||
),
|
||||
]
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 13:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0021_federationhistoricalkey"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="jwk",
|
||||
field=models.TextField(default={}, help_text="private jwk"),
|
||||
preserve_default=False,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="kid",
|
||||
field=models.CharField(max_length=33),
|
||||
),
|
||||
]
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 13:17
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0022_federationhistoricalkey_jwk_and_more"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="jwk",
|
||||
field=models.TextField(default={}, help_text="private jwk"),
|
||||
),
|
||||
]
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 13:27
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0023_alter_federationhistoricalkey_jwk"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="kid",
|
||||
field=models.CharField(max_length=128),
|
||||
),
|
||||
]
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 14:05
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0024_alter_federationhistoricalkey_kid"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="jwk",
|
||||
field=models.JSONField(default={}, help_text="private jwk"),
|
||||
),
|
||||
]
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 14:05
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0025_alter_federationhistoricalkey_jwk"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="jwk",
|
||||
field=models.JSONField(default=dict, help_text="private jwk"),
|
||||
),
|
||||
]
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-08 14:55
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0021_federationhistoricalkey_squashed_0026_alter_federationhistoricalkey_jwk",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationhistoricalkey",
|
||||
name="revocation_motivation",
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("0", "unspecified"),
|
||||
("1", "keyCompromise"),
|
||||
("2", "cACompromise"),
|
||||
("3", "affiliationChanged"),
|
||||
("4", "superseded"),
|
||||
("5", "cessationOfOperation"),
|
||||
("6", "certificateHold"),
|
||||
("8", "removeFromCRL"),
|
||||
("9", "privilegeWithdrawn"),
|
||||
("10", "aACompromise"),
|
||||
],
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
]
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-09 15:23
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0027_alter_federationhistoricalkey_revocation_motivation",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="issue_x509",
|
||||
field=models.BooleanField(
|
||||
default=False,
|
||||
help_text="If TA/Intermediate: issues x509 in both entity statements and configuration. if leaf, issues x509 certificates in configuration.",
|
||||
),
|
||||
),
|
||||
]
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-09 15:44
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("spid_cie_oidc_entity", "0028_federationentityconfiguration_issue_x509"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="entity_type",
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("federation_entity", "federation_entity"),
|
||||
("openid_relying_party", "openid_relying_party"),
|
||||
("openid_provider", "openid_provider"),
|
||||
("oauth_resource", "oauth_resource"),
|
||||
("wallet_provider", "wallet_provider"),
|
||||
("wallet_relying_party", "wallet_relying_party"),
|
||||
],
|
||||
default="openid_relying_party",
|
||||
help_text="OpenID Connect Federation entity type",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="issue_x509",
|
||||
field=models.BooleanField(
|
||||
default=False,
|
||||
help_text="Issues x509 certificates in the Entity Configuration.",
|
||||
),
|
||||
),
|
||||
]
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
# Generated by Django 4.2.1 on 2023-07-13 04:54
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0029_alter_federationentityconfiguration_entity_type_and_more",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="issue_x509",
|
||||
),
|
||||
]
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
# Generated by Django 4.2.7 on 2023-11-14 14:03
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0030_remove_federationentityconfiguration_issue_x509",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="federationentityconfiguration",
|
||||
name="entity_type",
|
||||
field=models.CharField(
|
||||
blank=True,
|
||||
choices=[
|
||||
("federation_entity", "federation_entity"),
|
||||
("openid_relying_party", "openid_relying_party"),
|
||||
("openid_provider", "openid_provider"),
|
||||
("openid_credential_issuer", "openid_credential_issuer"),
|
||||
("oauth_resource", "oauth_resource"),
|
||||
("wallet_provider", "wallet_provider"),
|
||||
("wallet_relying_party", "wallet_relying_party"),
|
||||
],
|
||||
default="openid_relying_party",
|
||||
help_text="OpenID Connect Federation entity type",
|
||||
max_length=33,
|
||||
),
|
||||
),
|
||||
]
|
||||
vendor/spid-cie-oidc-django/spid_cie_oidc/entity/migrations/0032_alter_fetchedentitystatement_jwt.py
Vendored
+20
@@ -0,0 +1,20 @@
|
||||
# Generated by Django 4.2.3 on 2023-12-13 14:27
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
(
|
||||
"spid_cie_oidc_entity",
|
||||
"0031_alter_federationentityconfiguration_entity_type",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="fetchedentitystatement",
|
||||
name="jwt",
|
||||
field=models.TextField(blank=False, null=False),
|
||||
),
|
||||
]
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 4.0.5 on 2026-03-23 15:42
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('spid_cie_oidc_entity', '0032_alter_fetchedentitystatement_jwt'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='federationentityconfiguration',
|
||||
name='entity_type',
|
||||
field=models.CharField(blank=True, choices=[('federation_entity', 'federation_entity'), ('openid_relying_party', 'openid_relying_party'), ('openid_provider', 'openid_provider'), ('openid_credential_issuer', 'openid_credential_issuer'), ('oauth_resource', 'oauth_resource'), ('wallet_provider', 'wallet_provider'), ('openid_credential_verifier', 'openid_credential_verifier')], default='openid_relying_party', help_text='OpenID Connect Federation entity type', max_length=33),
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user