Skip to main content

Jogosultsági műveletek és bootstrap

Ezt a referenciát a szolgáltatásidentitás előkészítéséhez és a jogosultsági határok hibáinak diagnosztizálásához használd. Olvasd el először a jogosultságkezelést, a Graph-beállítást és a külső előfeltételeket.

Szolgáltatáskulcsok​

Külön előkészített, önálló fejlesztői környezethez a backend könyvtárból futtasd:

node scripts/authorization-runtime.mjs init
node scripts/authorization-runtime.mjs ecas-backend pnpm dev:admin

Az egyesített futtatókörnyezet a futtatókörnyezeti életciklus szerint kezeli a szolgáltatásait. Ne indítsd ezt az önálló szolgáltatást egy már futó példány mellé.

Az AdminService alapértelmezett portja 3018. A GraphPullPoller a 3013-as portot használja. A BFF ADMIN_SERVICE_URL alapértelmezése http://127.0.0.1:3018.

A fejlesztői indító külön RSA-identitást tart fenn a BFF, a backend, az onboarding és a keresés számára. Ezek a ~/.local/share/ecas-authorization/ mappában vannak, a tárolón kívül. Az ECAS_AUTHORIZATION_DIRECTORY másik helyet választ ki. Az init megtartja a meglévő kulcsokat. A szolgáltatói titkok titkosítása külön fájlt használ, és a bérlő-, illetve szolgáltatóazonosítót hitelesített kiegészítő adatként köti.

Az éles környezet a kulcsokat titkos tárolóból csatolja. Az ellenőrző kulcsok a kiállítót, a célközönséget és a műveletet korlátozzák. Tartsd meg a korábbi ellenőrző kulcsokat, amíg az elfogadott vagy ütemezett munka még hivatkozhat rájuk.

A fejlesztői indító beállítja az ECAS_ENABLE_BOOTSTRAP_ROOT=true értéket. Ez egy külön, naplózott bootstrap-tagságot engedélyez. Nem tesz minden fejlesztőt gyökér-jogosultságúvá. Az éles környezet alapértelmezés szerint nem engedélyezi. A bootstrap nem bizonyíték Microsoft-szerepkörre.

Kliens-IP szabályzat​

A megbízhatatlan X-Forwarded-For nem állapíthatja meg a kliens címét. A beállított bemeneti réteg eltávolítja a bejövő MailGen proxyfejléceket, majd beállítja az X-Ecas-Client-IP és az X-Ecas-Proxy-Token fejlécet. A BFF a tokent időzítésbiztos ellenőrzéssel veti össze az ECAS_TRUSTED_PROXY_TOKEN értékkel. Az ellenőrzött cím az aláírt szolgáltatási kontextusba kerül.

Aktív IP-szabályok és ellenőrzött cím nélkül az új kérés meghiúsul. A tiltás győz. Ha van engedélyező lista, legalább egy bejegyzésnek egyeznie kell. Egy későbbi IP-szabályzat nem vonja vissza a tartós munka eredeti befogadását.

Külső célok​

Az ECAS_ENTITLEMENT_ALLOWED_HOSTS engedélyezi a HTTP-jogosultsági célokat. Az ECAS_PROVIDER_ALLOWED_HOSTS engedélyezi az egyedi, OpenAI-kompatibilis szolgáltatói célokat. A HTTP-kliens HTTPS-t és nyilvános címet követel meg. Rögzíti az ellenőrzött DNS-célt, elutasítja az átirányításokat, és korlátozza a válasz méretét és időtartamát.

A cURL-import konfigurációt elemez. Nem futtat shellt, és nem küld kérést. A modellfelfedezés szolgáltatói API-kat használ. A hiányzó metaadat ismeretlen marad. A kézzel megadott és a felfedezett értékek külön maradnak.

Tárolási mérések​

A mérő a ListObjectsV2 művelettel lapozza az objektummetaadatokat, és a kulcsokat deduplikálja. Az aktuális, ellenőrzött bérlői névtereket méri. Nem mér számlázási adatot, archivált verziókat vagy lemezkapacitást.

Az admin API összesített méreteket ad. Nem ad S3-hitelesítő adatokat, objektumlistákat, tartalmat vagy általános törlési lehetőséget. Egy külön postafiók-visszaállítási munkafolyamat külön jogosultságot használ. Egy sikertelen mérés megőrzi az előző sikeres pillanatképet és időpontját. Nem tárol hamis nullát.

A felület külön mutatja az alkalmazás tulajdonában lévő, leképezett felhasználó nélküli tárolót. Mérés közben kétmásodpercenként olvassa az állapotot, befejezés után megáll.

Elfogadott munka​

Az authorization.admissions a tárolt outbox payload::text pontos digestjét védi. A payload módosítása, egy másik bérlő vagy erőforrás, a visszavont bizonyíték vagy az érvénytelen forráskötés elutasítást okoz. Egy későbbi csoportvesztés önmagában nem érvényteleníti az elfogadott munkát.

Egy örökölt munkát ne legitimáld a jelenlegi adminisztrátori jogok alapján, ha nincs hozzá bizonyíték. Az ellenőrzött eredet nélküli munkához friss felhasználói elfogadás kell. Egy régi ütemezést ellenőrizd, mielőtt újra létrehoznád.

Adminisztrációs határok​

Egy helyi alkalmazás-bejelentkezés létrehozása nem hoz létre Microsoft-identitáskötést, és nem ad alkalmazásjogosultságot. A létrehozó bérlő egy nem összekapcsolt fiókot naplózott eredettel kezelhet. A kötés után az ellenőrzött identitások rangvédelmet kapnak.

A beállítási katalógus ugyanazt az érvényesítést használja, mint az alkalmazásbeállítások. A kötelező szabályzat felülírja a helyi és az optimista értékeket. A részletes Szinkronizálási központ-hozzáférés külön áll a mail.read által engedélyezett minimális, csak írhatósági olvasástól.

A tagsági részletek megmutatják az érvényességet, az utolsó bizonyítékot, a visszavonást, a lejáratot, a kivételt és a forráshibákat. Az automatikus tagsági kivétel eltávolítása visszaadhatja a hozzáférést, ezért ugyanazokat a hozzárendelési ellenőrzéseket igényli, mint a tagság hozzáadása. Modell-jogosultság eltávolításához is kell a modell-hozzárendelési jogosultság.

Szolgáltatóazonosság​

Egy modell-UUID nem változtathatja meg a szolgáltató- vagy modellcélját. Új célhoz hozz létre új rekordot. A megjelenítési mezők, az árak és a korlátok szerkeszthetők. A modellek által hivatkozott szolgáltató nem irányíthatja át a protokollját vagy a célját.

A tárolt kulcsú cél módosításához kulcskezelési jogosultság is kell. Ez megakadályozza, hogy önmagában a szolgáltatókezelési hozzáférés átirányítson egy titkot. A DNS és a HTTP közös határidőt kap. A kapcsolat rögzíti az engedélyezett nyilvános IPv4-célt, és elutasítja a privát célokat és az átirányításokat.

A default érvelési szint azt jelenti, hogy nincs közzétett explicit szint, így a szolgáltató alapértelmezése érvényes. Nem talál ki képességmetaadatot.