Компиллогдсон Go модулиуд
Модуль бүр `pkg/nexus` Go гэрээг хэрэгжүүлж нэг API бинарид компиллогдоно. Маршрут, цэс, эрх, миграцаа module өөрөө бүртгэнэ.
PetronetPetronet-ийн base repository нь identity, tenant, RBAC, SSO, апп суулгах runtime болон нэг built-in SSO Clients апп агуулна. Бизнес аппууд тусдаа product distribution-аас нэмэгдэнэ.
Үндэсний цахим үнэмлэхээр баталгаажна
Compile хийсэн module-ууд Go process дотор route, menu, permission, migration-аа бүртгэнэ. Аль модуль идэвхтэйг tenant бүрийн installation state шийднэ.
Модуль бүр `pkg/nexus` Go гэрээг хэрэгжүүлж нэг API бинарид компиллогдоно. Маршрут, цэс, эрх, миграцаа module өөрөө бүртгэнэ.
Аль байгууллагад аль апп идэвхтэйг өгөгдлийн сан шийднэ. Суулгаагүй апп руу хандвал хориглоно — код нь байгаа ч хаалга нь хаалттай.
Рекурсив шийдвэрлэлт, мөчлөг илрүүлэлт, хувилбарын шалгалт. Апп суулгахад түүний хамаарал бүр тохирох хувилбартайгаа хамт орно.
Default горимд release-тэй ирсэн `catalog/apps.json`-ийг уншина. `APP_CATALOG_URL` тохируулбал Ed25519 гарын үсэгтэй remote catalog-ийг шалгаж, cache болон bundled файл руу аюулгүй fallback хийнэ.
Энэ репогийн каталогт SSO клиент удирдах апп л байна. Бизнес аппуудыг тусдаа distribution репо компиллож, өөрийн каталогоор нэмдэг.
Эдгээр нь base runtime-д бодитоор байгаа shared capability-ууд. Гадаад provider ашигладаг хэсэг нь production credential болон тохиргоо шаарддаг.
Хэт олон зэрэг хүсэлтийг 503-аар хязгаарлах load shedder, гадаад дуудлагын timeout, зориулалтын retry бодлого платформд хэрэгжсэн.
XYP-ийн иргэн, хуулийн этгээдийн лавлагаа болон eID/ДАН identity connector код багтсан. Live үйлчилгээ нь тус бүрийн endpoint, client credential шаардана.
Session token hash-аар, нууц үг bcrypt-ээр хадгалагдана. Tenant хүсэлт database role, tenant context болон RLS хамгаалалттай хүснэгтүүдээр тусгаарлагдана.
Gemini түлхүүр өгвөл чат, яриа таних, унших, орчуулга ажиллана. Бизнес өгөгдөлд хандах хэрэгслийг тухайн distribution-ийн апп өөрөө бүртгэнэ.
Монгол, англи эх мөрүүд дээр НҮБ-ын бусад таван хэлний overlay нэмэгдэнэ. Орчуулга дутвал англи руу fallback хийж, CI үлдсэн цоорхойг тайлагнана.
Хэмжүүр, амьд ба бэлэн байдлын шалгалт, хэн юуг хэзээ өөрчилснийг бүртгэсэн ул мөр — эхний өдрөөс.
eID identity → серверийн session → tenant membership → RBAC → OIDC client. Алхам бүр сервер талд шалгагдана.
Модульт аппууд, tenant тусгаарлалт, RBAC
Push, QR, App2App, баталгаажсан identity
Холбогдсон аппууд, нэг session
Petronet нь local login, eID, federated SSO-г tenant membership, role, audit болон OIDC provider-тэй нэг server-side урсгалд холбодог.
Тохируулсан deployment дээр регистрийн дугаарын push, desktop QR болон mobile App2App урсгалыг backend эхлүүлж, төлвийг шалгана.
Built-in OAuth2/OIDC provider нь идэвхтэй platform session-ийг бүртгэлтэй redirect URI бүхий клиентүүдэд дахин ашиглах боломж олгоно.
eID RP secret болон бусад provider credential browser-д очихгүй. Session token database-д зөвхөн hash хэлбэрээр хадгалагдана.
Web болон native shell нь backend-ийн эхлүүлэх, төлөв шалгах endpoint-уудыг ашиглана; provider credential клиентэд хадгалагдахгүй.