35 lines
1.5 KiB
Markdown
35 lines
1.5 KiB
Markdown
# NODE.DC Auth SDK
|
||
|
||
Будущий общий пакет для приложений, которые контролируются кодом NODE.DC.
|
||
|
||
## Target responsibilities
|
||
|
||
- загрузка JWKS;
|
||
- валидация JWT;
|
||
- проверка issuer/audience/exp;
|
||
- нормализация claims;
|
||
- helper `requireAppAccess(groupName)`;
|
||
- helper `getCurrentUser()`;
|
||
- typed `ndcauth.session` helpers для cross-app login/logout/change revalidation events;
|
||
- typed `AuthUser`.
|
||
|
||
## Type contract
|
||
|
||
```ts
|
||
export type AuthUser = {
|
||
sub: string;
|
||
email: string;
|
||
name?: string;
|
||
groups: string[];
|
||
entitlements?: string[];
|
||
};
|
||
```
|
||
|
||
## Scope
|
||
|
||
Первый SDK рассчитан на Launcher backend и будущие Node.js/Next.js сервисы.
|
||
|
||
Для Plane fork на Python/Django нужна отдельная реализация middleware по тем же правилам, а этот пакет остается спецификацией для TypeScript приложений.
|
||
|
||
Session sync на 23.06.2026 не считается закрытым SDK-контрактом. Общий logout path уже существует в платформе, а BIM Viewer добавил BIM-first login-sync marker/revalidation slice. Перед подключением следующего сервиса нужно оформить общий `ndcauth.session` protocol здесь или в соседнем platform package, чтобы приложения не копировали BIM-specific логику.
|