NEXUS-ИЙГ ТОЙРСОН ҮЙЛЧИЛГЭЭ

Нэг платформ,
долоон хаяг

Nexus бол ганц сайт биш. Хэсэг бүр өөрийн хаягтай, өөрийн хамгаалалттай — тиймээс нэг нь унавал нөгөө нь хамт унахгүй, нэг cookie бүх хаалгыг онгойлгохгүй.

Хүсэлт бүр нэг замаар
cmd/api · нэг процесс
1MIDDLEWARE
1RequestID
2Tracing
3Logger
4Recovery
5LoadShedder · 1000
6Metrics
7SecurityHeaders · CORS · CSRF
2УРСГАЛ
Ажлын урсгал/api/v1/*
Байгууллага доторх хүн: гишүүнчлэл, эрх, апп, баримт, тайлан, SSO.
nexus.gerege.netsession_token
Хүний урсгал/api/v1/me/*
Хүн өөрөө, аль ч байгууллагаас гадуур: түүнд ирсэн зүйлс, хүсэлт, хувийн аппууд.
nexus.gerege.netsession_token
Операторын урсгал/api/platform/v1/*
Суулгацыг удирдагч: байгууллагын амьдралын мөчлөг, аудит, квот, тохиргоо.
admin.nexus.gerege.netcp_session
Урсгалууд хоорондоо import хийдэггүй — тест батална
3ЦӨМ БА ӨГӨГДӨЛ
internal/platform — дундын цөмУрсгалууд цөмийг уншина, цөм урсгалыг мэдэхгүй.
dbguardeidflowflagssecuritytelemetryresiliencesettings
PostgreSQLRLS
Гурван schema · RLS бодлого · dbguard
workspace33 хүснэгт
registry24 хүснэгт
operator8 хүснэгт
pg_dump · age · off-site
Gerege Nexusnexus.gerege.net
Платформ өөрөө — вэб бүрхүүл ба /api/v1. Next.js + Go.
Next.jsвэб бүрхүүлGo/api/v1PostgreSQLRLS
Хаягууд кодод биш, суулгацын тохиргоонд. Тохируулаагүй үйлчилгээ нүүрэнд харагдахгүй.
Developer порталdeveloper.nexus.gerege.net
Бизнесийн логикоо бич. Нэвтрэлт, эрх, цэс, миграц, тайлан, AI хэрэгслийг платформоос авна.
Go модулийн SDKOIDC клиент ба Mini appnexustest тестийн багц
Операторын консолadmin.nexus.gerege.net
Байгууллага үүсгэх, түр зогсоох, эрх олгох, аудит унших. Хэрэглэгчийн нэвтрэлтээс тусдаа бүртгэл, тусдаа cookie, хоёр дахь хүчин зүйл заавал.
TOTP4 үүрэгАудиттай
Дата агуулахreports.nexus.gerege.net
Үйл ажиллагааны системүүдээс цаг тутам ачаалж, бизнесийн нэр томьёогоор загварчилсан агуулах. Дээр нь BI самбар ба үгээр асуух AI — консолын операторын дансаар.
Цаг тутамBIAI
Нөөцлөлтbackups.nexus.gerege.net
Өдөр бүр 02:45-д бүтэн dump, restic-ээр шифрлэж тусдаа сервер дээрх S3 руу. Сүүлийн нөөц, хэмжээ, сэргээлтийн туршилт — консолын дансаар нэг дэлгэцэнд; 26 цаг, 30 хоногийн дүрэмтэй.
resticS36 сар хадгална
Хяналтmonitoring.nexus.gerege.net
API-ийн ачаалал, алдаа, p95, гадаад системүүд, дэд бүтэц, дохио — Prometheus-ээс хугацааны графикаар, консолын операторын дансаар. Хэмжигдээгүй зүйл эвдэрсэн ч мэдэгддэггүй.
PrometheusAlertmanagerКонсолын нэвтрэлт
Баримт бичигdocs.nexus.gerege.net
Кодоос уншиж бичсэн архитектур, app бичих, танилт, ажиллагаа. Зорилго биш — одоогийн байдал. Монгол, англиар.
MkDocs2 хэлКодоос шалгагдсан
AI туслах (MCP)mcp.nexus.gerege.net
Claude, ChatGPT, Gemini-д «Nexus руу явуул» гэхэд хариулт нь хүний «AI-аас ирсэн» хэсэгт ирж, хонх дуугарна. Nexus-ийн өөрийн нэвтрэлт, зөвхөн хүний өөрийн хэсэгт бичих эрх.
MCPOAuth 2.1Claude · ChatGPT · Gemini
ЦӨМД БЭЛЭН

Цөмд бэлэн зургаан том чадвар

Апп бүр эдгээрийг дахин бичихгүй — Nexus-ээс шууд авна.

01Эрх ба хаалгаPermissions · RBAC
403суулгаагүй бол
App эрхээ зарлахад л хангалттай — шалгалтыг платформ хийнэ. Цэсэнд хэн юу харахыг RBAC шийднэ, суулгаагүй эсвэл унтраасан аппын зам хаалттай.
App эрхээ зарланаЦэс RBAC-аарБайгууллага бүрээр
02Тоон гарын үсэгnexus.Signer
PIN2баталгаажсан
App баримтаа өгөхөд л PDF-д PAdES гарын үсэг зурагдана. e-ID-ээр зурсан нь хуулийн баталгаажсан хүчинтэй, байгууллагын нэрийн өмнөөс HSM рэйл бас бий.
PAdESe-ID · HSMНэг баримтын сан
03AI туслахОлон LLM провайдер
5провайдер
Gemini, OpenAI, Anthropic Claude, DeepSeek, Qwen — оператор сонгоно. Туслах нь app-ын бүртгэсэн хэрэгслийг (function calling) дуудаж бодит өгөгдлөөр хариулна.
Чат ба хэрэгсэлЯриа ↔ текстОрчуулга
04Тайланnexus.RegisterReport
30 секquery тааз
App тайлангаа зарлана, хөдөлгүүр ажиллуулна, хуваарьтай илгээж экспортлоно. Нэг удаан тайлан бусад хүсэлтийг хүлээлгэхгүй.
ХуваарьЭкспорт ба хүргэлтБайгууллага хооронд
05ХяналтOTel · Grafana
6сэрэмжлүүлэг
Метрик, лог, trace — app нэмэлт код бичихгүй. Удаан цэг бүр тухайн хүсэлтийн trace руу нээгдэнэ. API, дэд бүтэц, консол, гадаад систем, нөөц, хяналт өөрөө унтарвал дуугарна.
Exemplar → traceLoki логAlertmanager
06Төр ба төлбөрТөрийн гарц · Төлбөр
4холболт
Төрийн гарц, Төлбөрийн гарц, Webhook, захиалгат REST — оператор нэг удаа тохируулна, түлхүүрийг цөм битүүмжилнэ.
Төрийн гарцТөлбөрWebhook · REST
ЭХЛЭХ

Систем бүрээ дахин
бүтээхээ боль.
Nexus дээр босго.

Танилт, эрх, гарын үсэг, AI, хяналт — бэлэн. Та зөвхөн өөрийн бизнесийн логикоо бичнэ.

✓Танилт✓Эрх✓Гарын үсэг✓AI✓Хяналт
ТАНИЛТ БА ЭРХ

Хэн бэ гэдгийг улс,
юу хийхийг байгууллага шийднэ

e-ID Mongolia, Google, гадаад OIDC эсвэл нууц үг — аль замаар орсон ч нэг session, нэг эрхийн загвар. Платформ хаалттай: зөвхөн урьдчилан бүртгэгдсэн эсвэл урилгатай хүн нэвтэрнэ.

e-IDQR · App2App
GoogleOAuth
OIDCгадаад
Нууц үгbcrypt
Нэг session
session_token256 битSHA-256нэг эрхийн загвар
e-ID
e-ID Mongoliaeidmongolia.mn
Иргэнийг таних үндэсний дэд бүтэц. Nexus нууц үг хадгалахын оронд түүнээс асууна — QR, регистр эсвэл App2App. Gerege-ийнх биш, улсынх.
QRРегистрээр pushApp2AppPIN1 · PIN2
256 битSession token — санд зөвхөн SHA-256 digest хадгална
12 ц · 90 минБүтэн хугацаа · идэвхгүй бол хаагдана
5 / 15 мин5 буруу оролдлого — дараа нь түгжээ
ШуудХасагдсан гишүүний session тэр дороо зогсоно
Элсэх QR/join/<slug>
Байгууллага бүр нэг тогтмол QR-тэй — ажилтан уншуулж, маягтаа бөглөөд хүсэлт илгээнэ.
01
QR уншуулна
02
Маягтаа бөглөнө
03
Хүсэлт илгээнэ
ПЛАТФОРМ ӨӨРӨӨ IdP

Нэг нэвтрэлтээр
бусад систем ч орно

Nexus бол OAuth2 Authorization Server ба OpenID Connect Provider. Зарласан бүхэн нь ажилладаг — Grafana, Nexus-ийн бусад суулгацууд ч энэ рэйлээр нэвтэрдэг.

Нэг sessionsession_token
e-ID✓Google✓OIDC✓Нууц үг✓
256 бит · 12 ц · 90 мин
OIDC provider
OAuth2 Authorization Server ба OpenID Connect Provider
authorization_coderefresh_tokenclient_credentialsid_token
/.well-known/jwks.json
Grafana
Nexus-ийн бусад суулгац
Таны бүртгүүлсэн клиент
01
authorization_codePKCE заавалХэрэглэгчийн нэвтрэлт
02
refresh_tokenЭргэлт + давталт илрүүлэхХулгайлсан token ажиллахгүй
03
client_credentialsМашин хоорондын дуудлагаХүнгүй систем
04
id_tokenRS256 JWT/.well-known/jwks.json
Token-ий насжилтБогино access — цуцлалт хурдан хүрнэ
Access1 цаг
Refresh30 хоног
ЭХЛЭХ

Систем бүрээ дахин
бүтээхээ боль.
Nexus дээр босго.

Танилт, эрх, гарын үсэг, AI, хяналт — бэлэн. Та зөвхөн өөрийн бизнесийн логикоо бичнэ.

✓Танилт✓Эрх✓Гарын үсэг✓AI✓Хяналт
АЮУЛГҮЙ БАЙДАЛ

Хамгаалалт нэмэлт биш
давхарга бүрт суурилсан

Нэвтрэлтээс өгөгдлийн сан, хөтчөөс CI хүртэл — нэг давхарга алдвал дараагийнх нь барина.

6хамгаалалтын давхарга
36кодод хэрэгжсэн хяналт
3автомат скан push бүрт
0нууц түлхүүр хөтөчид
36 хяналтыг харах →
clickjackingframe-ancestors none
CSRFmiddleware гинжинд
Open redirectзөвхөн HTTPS
06Хангамжийн гинж ба CIgovulncheckgosec
05Вэб хамгаалалтCSPCSRF
04Танилт ба session256 бит
03OAuth2 / OIDCPKCE
02Оператор ба аудитTOTP
01ӨгөгдөлRLS
PostgreSQL · dbguard
ДЭЛХИЙН СТАНДАРТ

Аюулгүй байдал
дэлхийн жишгээр

Nexus-ийн хамгаалалт нь дотооддоо зохиосон дүрэм биш — олон улсад хүлээн зөвшөөрөгдсөн жишгийг кодод буулгасан хэрэгжилт юм.

ВэбOWASP Top 10-ын гол эрсдэлүүдийг (CSP, CSRF, clickjacking, open redirect) хаана.
ТанилтOAuth 2.0-ийн аюулгүй байдлын шилдэг практик ба OpenID Connect-ийн дагуу PKCE, refresh token эргэлт, RS256 гарын үсэгтэй id_token-оор ажиллана.
Өгөгдөл«Defense in depth» зарчмаар давхар ханатай — нэг давхарга алдвал дараагийнх нь барина.
Вэб давхарга
OWASP Top 10
CSP nonce · strict-dynamicCSRF middlewareframe-ancestors noneOpen redirect хориотой
4 / 4 кодод
Танилт
OAuth 2.0 Security BCP
PKCE заавалRefresh token эргэлтconstant-time харьцуулалтБүртгэлтэй redirect URI
4 / 4 кодод
IdP
OpenID Connect
RS256 id_token/.well-known/jwks.jsonAccess 1 цаг · opaqueintrospect
4 / 4 кодод
Өгөгдөл
Defense in depth
tenant_id шүүлтPostgreSQL RLS · dbguardSecretSealerage · fail-closed
4 / 4 кодод
Хяналт бүр нь баримт бичигт биш, тестээр баталгаажсан кодод оршдог.govulncheckgosecgolangci-lint
ӨГӨГДЛИЙН ТУСГААРЛАЛТ

Мартагдсан WHERE ч
өөр байгууллагын мөр буцаахгүй

Хоёр давхар хана. Ирээдүйд өөр хүний бичсэн app-д шүүлт дутвал — бусдын өгөгдөл биш, хоосон хариу буцна.

Apptenant_id шүүлтRLS · dbguardPostgreSQL
1-Р ХАНАQuery бүрийн шүүлтАппын код дотор · үндсэн хяналт
SELECT … FROM invoices WHERE tenant_id = $1
Query бүр байгууллагын түлхүүрийг авч явна.
Аппын кодҮндсэн хяналт
2-Р ХАНАӨгөгдлийн сангийн RLS — dbguardPostgreSQL дотор · код мартсан ч ажиллана
SET ROLE gerege_nexus_tenant;
SET app.current_tenant = <id>
Холболт гарах мөчид хэн, аль байгууллага гэдгийг Postgres өөрөө мэднэ — бодлого нь шүүлтийг дахин хийнэ.
PostgreSQLRLS бодлого
Хэрэв app-д WHERE мартагдвал?Нэг л query, хоёр өөр үр дүн
SELECT … FROM invoices -- WHERE байхгүй
Ганц давхар хамгаалалттай болБүх байгууллагын нэхэмжлэл нэг дэлгэцэнд гарна.
БАЙГУУЛЛАГАНЭХЭМЖЛЭЛДҮН
А ХХКINV-04121.2сая
Б ХХКINV-0388860мян
В ХХКINV-03712.4сая
Г ХХКINV-0355540мян
4 байгууллага · алдагдал
Nexus дээрЗөвхөн өөрийн байгууллагын мөр — бусдынх нь RLS-ийн цаана үлдэнэ.
БАЙГУУЛЛАГАНЭХЭМЖЛЭЛДҮН
А ХХКINV-04121.2сая
Б ХХКINV-0388860мян
В ХХКINV-03712.4сая
Г ХХКINV-0355540мян
1 байгууллага · RLS
Байгууллагагүй ажил (нэвтрэлт, OAuth callback) тусдаа нэвтрэх role-оор явна — цоорхой биш, зориулалтын зам.
schema · test
Гурван schemaworkspace · registry · operator — хүснэгтийн тоог тест тоолж, хил давахыг баринаCI-д тест барина
compile graph
Урсгалын хилАжлын, хүний, операторын урсгал хоорондоо import хийхгүйг компиляцын граф шалганаCI-д тест барина
250 зам
Замын golden файлШинэ HTTP зам бүр файлд бичигдэнэ — санамсаргүй нэмэгдэж чадахгүйCI-д тест барина
36 ХЯНАЛТ

6 давхарга · кодод хэрэгжсэн

Танилт ба sessionOAuth2 / OIDCӨгөгдөлВэб хамгаалалтОператор ба аудитХангамжийн гинж ба CI
Танилт ба sessionХэн бэ гэдгийг найдвартай
Session token 256 бит — санд зөвхөн SHA-256 digest
Нууц үг bcrypt-ээр hash хийгдэнэ
12 цагийн хугацаа, 90 мин идэвхгүй бол хаагдана
15 минутад 5 буруу оролдлого — түгжээ
Нэвтрэлтэд IP тус бүрийн хурдны хязгаар
Хасагдсан гишүүний session тэр дороо зогсоно
01 / 066 хяналт
OAuth2 / OIDCПлатформ өөрөө IdP
authorization_code-д PKCE заавал
Refresh token эргэлт ба давтан ашиглалт илрүүлэх
Клиентийн нууцыг constant-time харьцуулна
Access token 1 цаг, opaque — introspect-оор
id_token RS256, JWKS-ээр баталгаажна
Зөвхөн бүртгэлтэй redirect URI
02 / 066 хяналт
ӨгөгдөлБайгууллага бүр өөрийн хананы цаана
Query бүр tenant_id-аар шүүгдэнэ
PostgreSQL RLS — dbguard хоёр дахь хана
Гурван schema, хилийг тест барина
Credential-ийг SecretSealer битүүмжилнэ
Нөөц age-ээр шифрлэгдэнэ — fail-closed
Суулгаагүй, унтраасан аппын зам 403
03 / 066 хяналт
Вэб хамгаалалтХөтөч дээрх халдлагаас
CSP — хүсэлт бүрт шинэ nonce, strict-dynamic
frame-ancestors none — clickjacking хаалттай
CSRF хамгаалалт middleware гинжинд
HSTS, X-Content-Type-Options production-д
Cookie: HttpOnly, SameSite, Secure
Open redirect хориотой — зөвхөн HTTPS, credential-гүй
04 / 066 хяналт
Оператор ба аудитУдирдлагад ч хязгаар бий
Тусдаа origin, тусдаа cookie
Хоёр дахь хүчин зүйл (TOTP) заавал
4 үүрэг · 15 чадвар — нэг хүснэгтээс
Impersonation шалтгаантай, хугацаатай, бүртгэлтэй
Консолын бичих үйлдэл бүр аудитад
Устгал 30 хоногийн дараа, break-glass сэрэмжлүүлэгтэй
05 / 066 хяналт
Хангамжийн гинж ба CIКод орохоос өмнө шалгагдана
govulncheck — хамаарлын эмзэг байдал
gosec — эх кодын статик шинжилгээ
golangci-lint — зөв байдал
Даваа бүр хуваарьт эмзэг байдлын скан
Каталог Ed25519 гарын үсэгтэй
Production-д төрийн системийн mock унтарна
06 / 066 хяналт
Эмзэг байдал олсон уу?Нийтийн issue-д биш, хувийн журмаар мэдээлнэ үү — SECURITY.md-д дэлгэрэнгүй.
security@gerege.mn
ЭХЛЭХ

Систем бүрээ дахин
бүтээхээ боль.
Nexus дээр босго.

Танилт, эрх, гарын үсэг, AI, хяналт — бэлэн. Та зөвхөн өөрийн бизнесийн логикоо бичнэ.

✓Танилт✓Эрх✓Гарын үсэг✓AI✓Хяналт