Skip to content

Commit acc7e41

Browse files
committed
docs: integrate IDENTITY_PROVIDER and BRANDING entities into English and Spanish ER blueprints, DBML, and SQL DDL
1 parent 5963b6d commit acc7e41

4 files changed

Lines changed: 190 additions & 0 deletions

File tree

docs/architecture/blueprints-es/database-design-er.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ erDiagram
3333
TENANT ||--o{ SYSTEM_SUITE : "posee"
3434
TENANT ||--o{ BRANCH : "opera"
3535
TENANT ||--o{ USER_ACCOUNT : "posee"
36+
TENANT ||--o{ IDENTITY_PROVIDER : "registra"
37+
TENANT ||--o| BRANDING : "configura"
3638
SYSTEM_SUITE ||--o{ ROLE : "define"
3739
SYSTEM_SUITE ||--o{ FUNCTIONAL_MODULE : "contiene"
3840
@@ -166,6 +168,9 @@ Gestión del ciclo de vida del usuario, administración delegada y flujos de tra
166168

167169
```mermaid
168170
erDiagram
171+
TENANT ||--o{ USER_ACCOUNT : "posee"
172+
TENANT ||--o{ IDENTITY_PROVIDER : "registra"
173+
TENANT ||--o| BRANDING : "configura"
169174
USER_ACCOUNT ||--o{ USER_MANAGEMENT_DELEGATION : "admin"
170175
USER_ACCOUNT ||--o{ USER_MANAGEMENT_DELEGATION : "gestionado"
171176
APPROVAL_WORKFLOW ||--o{ APPROVAL_REQUEST : "define_reglas_para"
@@ -242,6 +247,38 @@ erDiagram
242247
uniqueidentifier ManagedUserId FK
243248
uniqueidentifier SuiteId FK "Alcance Opcional"
244249
}
250+
251+
TENANT {
252+
uniqueidentifier TenantId PK
253+
nvarchar Name
254+
}
255+
256+
IDENTITY_PROVIDER {
257+
uniqueidentifier IdpId PK
258+
uniqueidentifier TenantId FK
259+
nvarchar Code "SAML/OIDC/AZURE_AD"
260+
nvarchar Name
261+
nvarchar Description
262+
nvarchar Strategy "OIDC/SAML2/WS_FED"
263+
bit IsActive
264+
}
265+
266+
BRANDING {
267+
uniqueidentifier BrandingId PK
268+
uniqueidentifier TenantId FK "Uno-a-Uno / RLS"
269+
nvarchar Logo "URI / Ruta del logo"
270+
nvarchar LogoFormat "PNG/SVG/JPEG"
271+
nvarchar PrimaryColor "Código Hex"
272+
nvarchar BackgroundStyle "Glassmorphism/SleekDark"
273+
nvarchar HeadlineText
274+
nvarchar SecondaryText
275+
nvarchar PrimaryButtonLabel
276+
nvarchar FooterText
277+
nvarchar CustomDomain "Anulable"
278+
nvarchar DnsVerificationStatus "PENDING/VERIFIED/FAILED"
279+
nvarchar DnsCnameTarget
280+
bit MagicLinkFallbackEnabled
281+
}
245282
246283
APPROVAL_WORKFLOW {
247284
uniqueidentifier WorkflowId PK

docs/architecture/blueprints-es/er-export-formats.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,33 @@ Table BRANCH {
2121
Name nvarchar
2222
}
2323
24+
Table IDENTITY_PROVIDER {
25+
IdpId uniqueidentifier [pk]
26+
TenantId uniqueidentifier
27+
Code nvarchar
28+
Name nvarchar
29+
Description nvarchar
30+
Strategy nvarchar
31+
IsActive bit
32+
}
33+
34+
Table BRANDING {
35+
BrandingId uniqueidentifier [pk]
36+
TenantId uniqueidentifier
37+
Logo nvarchar
38+
LogoFormat nvarchar
39+
PrimaryColor nvarchar
40+
BackgroundStyle nvarchar
41+
HeadlineText nvarchar
42+
SecondaryText nvarchar
43+
PrimaryButtonLabel nvarchar
44+
FooterText nvarchar
45+
CustomDomain nvarchar
46+
DnsVerificationStatus nvarchar
47+
DnsCnameTarget nvarchar
48+
MagicLinkFallbackEnabled bit
49+
}
50+
2451
Table USER_ACCOUNT {
2552
UserId uniqueidentifier [pk]
2653
TenantId uniqueidentifier
@@ -225,6 +252,8 @@ Table ACTION {
225252
// Relationships
226253
Ref: USER_ACCOUNT.TenantId > TENANT.TenantId
227254
Ref: USER_MANAGEMENT_DELEGATION.TenantId > TENANT.TenantId
255+
Ref: IDENTITY_PROVIDER.TenantId > TENANT.TenantId
256+
Ref: BRANDING.TenantId - TENANT.TenantId
228257
Ref: USER_MANAGEMENT_DELEGATION.ParentAdminUserId > USER_ACCOUNT.UserId
229258
Ref: USER_MANAGEMENT_DELEGATION.ManagedUserId > USER_ACCOUNT.UserId
230259
Ref: USER_MANAGEMENT_DELEGATION.SuiteId > SYSTEM_SUITE.SuiteId
@@ -297,6 +326,35 @@ CREATE TABLE BRANCH (
297326
Name NVARCHAR(255)
298327
);
299328

329+
CREATE TABLE IDENTITY_PROVIDER (
330+
IdpId UNIQUEIDENTIFIER PRIMARY KEY,
331+
TenantId UNIQUEIDENTIFIER REFERENCES TENANT(TenantId),
332+
Code NVARCHAR(100) NOT NULL,
333+
Name NVARCHAR(255) NOT NULL,
334+
Description NVARCHAR(MAX),
335+
Strategy NVARCHAR(100) NOT NULL,
336+
IsActive BIT DEFAULT 0,
337+
CreatedAt DATETIME2 DEFAULT SYSUTCDATETIME()
338+
);
339+
340+
CREATE TABLE BRANDING (
341+
BrandingId UNIQUEIDENTIFIER PRIMARY KEY,
342+
TenantId UNIQUEIDENTIFIER UNIQUE REFERENCES TENANT(TenantId),
343+
Logo NVARCHAR(MAX),
344+
LogoFormat NVARCHAR(50),
345+
PrimaryColor NVARCHAR(50),
346+
BackgroundStyle NVARCHAR(100),
347+
HeadlineText NVARCHAR(MAX),
348+
SecondaryText NVARCHAR(MAX),
349+
PrimaryButtonLabel NVARCHAR(255),
350+
FooterText NVARCHAR(MAX),
351+
CustomDomain NVARCHAR(255) NULL,
352+
DnsVerificationStatus NVARCHAR(50) DEFAULT 'PENDING',
353+
DnsCnameTarget NVARCHAR(255),
354+
MagicLinkFallbackEnabled BIT DEFAULT 0,
355+
CreatedAt DATETIME2 DEFAULT SYSUTCDATETIME()
356+
);
357+
300358
CREATE TABLE USER_ACCOUNT (
301359
UserId UNIQUEIDENTIFIER PRIMARY KEY,
302360
TenantId UNIQUEIDENTIFIER REFERENCES TENANT(TenantId),

docs/architecture/blueprints/database-design-er.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ erDiagram
3333
TENANT ||--o{ SYSTEM_SUITE : "owns"
3434
TENANT ||--o{ BRANCH : "operates"
3535
TENANT ||--o{ USER_ACCOUNT : "owns"
36+
TENANT ||--o{ IDENTITY_PROVIDER : "registers"
37+
TENANT ||--o| BRANDING : "configures"
3638
SYSTEM_SUITE ||--o{ ROLE : "defines"
3739
SYSTEM_SUITE ||--o{ FUNCTIONAL_MODULE : "contains"
3840
@@ -166,6 +168,9 @@ Management of user lifecycle, delegated administration, and onboarding workflows
166168

167169
```mermaid
168170
erDiagram
171+
TENANT ||--o{ USER_ACCOUNT : "owns"
172+
TENANT ||--o{ IDENTITY_PROVIDER : "registers"
173+
TENANT ||--o| BRANDING : "configures"
169174
USER_ACCOUNT ||--o{ USER_MANAGEMENT_DELEGATION : "admin"
170175
USER_ACCOUNT ||--o{ USER_MANAGEMENT_DELEGATION : "managed"
171176
APPROVAL_WORKFLOW ||--o{ APPROVAL_REQUEST : "defines_rules_for"
@@ -242,6 +247,38 @@ erDiagram
242247
uniqueidentifier ManagedUserId FK
243248
uniqueidentifier SuiteId FK "Optional Scope"
244249
}
250+
251+
TENANT {
252+
uniqueidentifier TenantId PK
253+
nvarchar Name
254+
}
255+
256+
IDENTITY_PROVIDER {
257+
uniqueidentifier IdpId PK
258+
uniqueidentifier TenantId FK
259+
nvarchar Code "SAML/OIDC/AZURE_AD"
260+
nvarchar Name
261+
nvarchar Description
262+
nvarchar Strategy "OIDC/SAML2/WS_FED"
263+
bit IsActive
264+
}
265+
266+
BRANDING {
267+
uniqueidentifier BrandingId PK
268+
uniqueidentifier TenantId FK "One-to-One / RLS"
269+
nvarchar Logo "URI / Storage Path"
270+
nvarchar LogoFormat "PNG/SVG/JPEG"
271+
nvarchar PrimaryColor "Hex Code"
272+
nvarchar BackgroundStyle "Glassmorphism/SleekDark"
273+
nvarchar HeadlineText
274+
nvarchar SecondaryText
275+
nvarchar PrimaryButtonLabel
276+
nvarchar FooterText
277+
nvarchar CustomDomain "Nullable"
278+
nvarchar DnsVerificationStatus "PENDING/VERIFIED/FAILED"
279+
nvarchar DnsCnameTarget
280+
bit MagicLinkFallbackEnabled
281+
}
245282
246283
APPROVAL_WORKFLOW {
247284
uniqueidentifier WorkflowId PK

docs/architecture/blueprints/er-export-formats.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,33 @@ Table BRANCH {
2121
Name nvarchar
2222
}
2323
24+
Table IDENTITY_PROVIDER {
25+
IdpId uniqueidentifier [pk]
26+
TenantId uniqueidentifier
27+
Code nvarchar
28+
Name nvarchar
29+
Description nvarchar
30+
Strategy nvarchar
31+
IsActive bit
32+
}
33+
34+
Table BRANDING {
35+
BrandingId uniqueidentifier [pk]
36+
TenantId uniqueidentifier
37+
Logo nvarchar
38+
LogoFormat nvarchar
39+
PrimaryColor nvarchar
40+
BackgroundStyle nvarchar
41+
HeadlineText nvarchar
42+
SecondaryText nvarchar
43+
PrimaryButtonLabel nvarchar
44+
FooterText nvarchar
45+
CustomDomain nvarchar
46+
DnsVerificationStatus nvarchar
47+
DnsCnameTarget nvarchar
48+
MagicLinkFallbackEnabled bit
49+
}
50+
2451
Table USER_ACCOUNT {
2552
UserId uniqueidentifier [pk]
2653
TenantId uniqueidentifier
@@ -225,6 +252,8 @@ Table ACTION {
225252
// Relationships
226253
Ref: USER_ACCOUNT.TenantId > TENANT.TenantId
227254
Ref: USER_MANAGEMENT_DELEGATION.TenantId > TENANT.TenantId
255+
Ref: IDENTITY_PROVIDER.TenantId > TENANT.TenantId
256+
Ref: BRANDING.TenantId - TENANT.TenantId
228257
Ref: USER_MANAGEMENT_DELEGATION.ParentAdminUserId > USER_ACCOUNT.UserId
229258
Ref: USER_MANAGEMENT_DELEGATION.ManagedUserId > USER_ACCOUNT.UserId
230259
Ref: USER_MANAGEMENT_DELEGATION.SuiteId > SYSTEM_SUITE.SuiteId
@@ -297,6 +326,35 @@ CREATE TABLE BRANCH (
297326
Name NVARCHAR(255)
298327
);
299328

329+
CREATE TABLE IDENTITY_PROVIDER (
330+
IdpId UNIQUEIDENTIFIER PRIMARY KEY,
331+
TenantId UNIQUEIDENTIFIER REFERENCES TENANT(TenantId),
332+
Code NVARCHAR(100) NOT NULL,
333+
Name NVARCHAR(255) NOT NULL,
334+
Description NVARCHAR(MAX),
335+
Strategy NVARCHAR(100) NOT NULL,
336+
IsActive BIT DEFAULT 0,
337+
CreatedAt DATETIME2 DEFAULT SYSUTCDATETIME()
338+
);
339+
340+
CREATE TABLE BRANDING (
341+
BrandingId UNIQUEIDENTIFIER PRIMARY KEY,
342+
TenantId UNIQUEIDENTIFIER UNIQUE REFERENCES TENANT(TenantId),
343+
Logo NVARCHAR(MAX),
344+
LogoFormat NVARCHAR(50),
345+
PrimaryColor NVARCHAR(50),
346+
BackgroundStyle NVARCHAR(100),
347+
HeadlineText NVARCHAR(MAX),
348+
SecondaryText NVARCHAR(MAX),
349+
PrimaryButtonLabel NVARCHAR(255),
350+
FooterText NVARCHAR(MAX),
351+
CustomDomain NVARCHAR(255) NULL,
352+
DnsVerificationStatus NVARCHAR(50) DEFAULT 'PENDING',
353+
DnsCnameTarget NVARCHAR(255),
354+
MagicLinkFallbackEnabled BIT DEFAULT 0,
355+
CreatedAt DATETIME2 DEFAULT SYSUTCDATETIME()
356+
);
357+
300358
CREATE TABLE USER_ACCOUNT (
301359
UserId UNIQUEIDENTIFIER PRIMARY KEY,
302360
TenantId UNIQUEIDENTIFIER REFERENCES TENANT(TenantId),

0 commit comments

Comments
 (0)