Domov vývoj Čo je zabezpečenie prístupu k kódu (cas)? - definícia z technológie

Čo je zabezpečenie prístupu k kódu (cas)? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená zabezpečenie prístupu k kódu (CAS)?

Zabezpečenie prístupu k kódu (CAS) je bezpečnostný mechanizmus, pomocou ktorého môže bežný jazykový modul runtime (CLR) .NET Framework obmedziť riadený kód na vykonávanie operácií s obmedzenou sadou povolení.


CAS vynucuje bezpečnostné politiky v rámci .NET tým, že bráni neoprávnenému prístupu k chráneným zdrojom a operáciám. Na rozdiel od tradičných bezpečnostných metód, v ktorých sa používateľské poverenia získavajú od používateľa, je CAS navrhnutý tak, aby riešil problémy, ktorým čelí pri získavaní kódu z externých zdrojov, ktoré obsahujú chyby a zraniteľné miesta. Tieto chyby a zraniteľné miesta môžu spôsobiť, že systém používateľa bude zraniteľný voči škodlivému kódu, ktorý môže vykonávať úlohy bez toho, aby o tom používateľ vedel. CAS v skutočnosti vie a povoľuje iba tie operácie, ktoré daný užívateľský kód môže a nemôže vykonať. Táto funkcia je použiteľná pre všetky spravované kódy zacielené na CLR.


CAS poskytuje zabezpečenie založené na dôkazoch postavené na vrstve nad zabezpečením poskytovaným operačným systémom Windows. Zatiaľ čo systém Windows je založený na oprávneniach používateľa, CAS je založený na dôkazoch o zhromaždení. Zhromaždenie obsahuje povolenia definované v bezpečnostnej politike a tvorí základ pre povolenie kódu na vykonávanie potrebných akcií.

Techopedia vysvetľuje zabezpečenie prístupu k kódu (CAS)

CAS je okrem iného postavený na týchto prvkoch:

  1. Povolenia: Sú to základné práva potrebné na prístup k chránenému prostriedku alebo na vykonanie chránenej operácie.
  2. Sada povolení: Toto je skupina povolení, napríklad „úplná dôvera“, „nič“, „internet“, „miestny intranet“ a ďalšie.
  3. Skupina kódov: Toto je logické zoskupenie kódu so špecifikovanou podmienkou členstva, napríklad LocalIntranet_zone a Internet_zone.
  4. Dôkaz: Ide o informácie súvisiace so zostavením, ako sú adresár aplikácií, vydavateľ, adresa URL a zóna zabezpečenia.
  5. Bezpečnostná politika: Toto je sada pravidiel nakonfigurovaných správcom na určovanie povolení udelených pre kód vyjadrený hierarchicky na štyroch úrovniach ako podniková, strojová, užívateľská a aplikačná doména.

Privilegovaná operácia vykonania kódu vyžaduje CLR pre jedno alebo viac povolení. Skutočné povolenie sa vypočíta pomocou spojenia povolení nastaveného v skupinách kódov a potom križovatky na úrovni politiky. CLR zaisťuje, že požadované povolenia sú v udelených povoleniach metódy tejto zostavy. Ak povolenie nie je udelené, bude vyvolaná bezpečnostná výnimka.


CAS poskytuje dva bezpečnostné režimy na definovanie povolení pre kód:

  • Deklaratívne zabezpečenie sa implementuje definovaním bezpečnostných atribútov na úrovni zhromaždenia, triedy alebo člena. Deklaratívny režim sa používa, keď je potrebné hovory vyhodnotiť v čase kompilácie.
  • Rozsiahla bezpečnosť používa volania metód runtime na vytvorenie inštancií tried bezpečnosti. Imperatívny režim sa používa, keď je potrebné vyhodnotiť hovory v čase vykonávania.

CAS má obmedzenia, vrátane zlyhania aplikácie presunutej do iného systému, keď je bezpečnostná politika odlišná. Okrem toho neexistuje žiadna kontrola nad nespravovaným kódom a žiadna kontrola vývoja aplikácií, ktoré by vyhovovali potrebám rôznych scenárov nastavení zabezpečenia v užívateľských systémoch.


Na efektívne používanie jemnozrnnej bezpečnostnej technológie CAS by vývojári mali písať kód podľa typu, používať deklaratívnu alebo imperatívnu syntax na základe kontextu, požadovať povolenie na spustenie kódu na spustenie kódu a používať bezpečné knižnice.

Čo je zabezpečenie prístupu k kódu (cas)? - definícia z technológie