Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V systému Windows Filtering Platform (WFP) služba BFE (Base Filtering Engine) implementuje standardní model řízení přístupu systému Windows na základě přístupových tokenů a popisovačů zabezpečení.
Model řízení přístupu
Popisovače zabezpečení je možné zadat při přidávání nových objektů WFP, jako jsou filtry a dílčí vrstvy. Popisovače zabezpečení se spravují pomocí funkcí pro správu WFP Fwpm*GetSecurityInfo0 a Fwpm*SetSecurityInfo0, kde * představuje název objektu WFP. Tyto funkce jsou sémanticky identické s funkcemi windows GetSecurityInfo a SetSecurityInfo.
Poznámka
Funkce Fwpm*SetSecurityInfo0 nelze volat v rámci explicitní transakce.
Poznámka
Funkce Fwpm*SetSecurityInfo0 lze volat pouze z dynamické relace, pokud se používají ke správě dynamického objektu vytvořeného ve stejné relaci.
Výchozí popisovač zabezpečení pro modul filtru (kořenový stroj v následujícím diagramu) je následující.
- Udělte GENERIC_ALL (GA) přístupová práva k vestavěné skupině Administrátoři.
- Udělte přístupová práva GENERIC_READ (GR), GENERIC_WRITE (GW), GENERIC_EXECUTE (GX) operátorům konfigurace sítě.
- Udělte GRGWGX přístupová práva k následujícím identifikátorům zabezpečení služby (SSID): MpsSvc (Windows Firewall), NapAgent (Agent ochrany přístupu k síti), PolicyAgent (agent zásad IPsec), RpcSs (vzdálené volání procedur) a WdiServiceHost (Hostitel diagnostických služeb).
- Udělte oprávnění všem k FWPM_ACTRL_OPEN a FWPM_ACTRL_CLASSIFY. (Toto jsou přístupová práva specifická pro WFP, popsaná v tabulce níže.)
Zbývající výchozí popisovače zabezpečení jsou odvozeny dědičností.
Existují některé kontroly přístupu, například pro Fwpm*Add0, Fwpm*CreateEnumHandle0, Fwpm*SubscribeChanges0 volání funkce, které nelze provést na úrovni jednotlivých objektů. Pro tyto funkce existují objekty kontejneru pro každý typ objektu. Pro standardní typy objektů (například zprostředkovatelé, bublinové popisky, filtry) jsou stávající Fwpm*GetSecurityInfo0 a Fwpm*SetSecurityInfo0 funkce přetížené, aby parametr GUID s hodnotou null identifikátoru GUID identifikoval přidružený kontejner. Pro ostatní typy objektů (například síťové události a přidružení zabezpečení IPsec) existují explicitní funkce pro správu informací o zabezpečení kontejneru.
BFE podporuje automatickou dědičnost položek řízení přístupu (ACEs) volitelného seznamu řízení přístupu (DACL). BFE nepodporuje položky ACE seznamu řízení přístupu systému (SACL). Objekty dědí položky ACE z jejich kontejneru. Kontejnery dědí ACE z filtračního enginu. Cesty šíření jsou znázorněny v následujícím diagramu.
Pro standardní typy objektů BFE vynucuje všechna obecná a standardní přístupová práva. Kromě toho WFP definuje následující specifická přístupová práva.
| WFP přístupové právo | Popis |
|---|---|
|
FWPM_ACTRL_ADD |
Vyžaduje se k přidání objektu do kontejneru. |
|
FWPM_ACTRL_ADD_LINK |
Vyžaduje se k vytvoření přidružení k objektu. Chcete-li například přidat filtr, který odkazuje na výzvu, musí mít volající přístup ADD_LINK k výzvě. |
|
FWPM_ACTRL_BEGIN_READ_TXN |
Vyžaduje se k zahájení explicitní transakce čtení. |
|
FWPM_ACTRL_BEGIN_WRITE_TXN |
Vyžaduje se pro zahájení explicitní zápisové transakce. |
|
FWPM_ACTRL_CLASSIFY |
Vyžaduje se pro klasifikaci v rámci vrstvy uživatelského režimu. |
|
FWPM_ACTRL_ENUM |
Vyžaduje se k vytvoření výčtu objektů v kontejneru. Enumerátor však vrací pouze objekty, ke kterým má volající FWPM_ACTRL_READ přístup. |
|
FWPM_ACTRL_OPEN |
Vyžaduje se k otevření relace pomocí BFE. |
|
FWPM_ACTRL_READ |
Vyžaduje se ke čtení vlastností objektu. |
|
FWPM_ACTRL_READ_STATS |
Je zapotřebí číst statistiky. |
|
FWPM_ACTRL_SUBSCRIBE |
Vyžaduje se k přihlášení k odběru oznámení. Odběratelé obdrží oznámení pouze pro objekty, ke kterým mají přístup FWPM_ACTRL_READ. |
|
FWPM_ACTRL_WRITE |
Je nutné nastavit možnosti motoru. |
BFE přeskočí všechny kontroly přístupu volajících v režimu jádra.
Aby se správci nemohli uzamknout před BFE, mají členové předdefinované skupiny Administrators vždy udělené FWPM_ACTRL_OPEN k objektu modulu engine. Správce tak může získat přístup pomocí následujícího postupu.
- Povolte oprávnění SE_TAKE_OWNERSHIP_NAME.
- Volání FwpmEngineOpen0. Volání proběhne úspěšně, protože volající je členem vestavěné skupiny Správci.
- Převzít vlastnictví objektu engine. To se podaří, protože volající má oprávnění SE_TAKE_OWNERSHIP_NAME.
- Aktualizujte DACL. To proběhne úspěšně, protože vlastník má vždy WRITE_DAC přístup.
Vzhledem k tomu, že BFE podporuje vlastní auditování, negeneruje audity obecného přístupu k objektům. Proto je SACL ignorován.
Požadovaná přístupová práva WFP
Následující tabulka ukazuje přístupová práva požadovaná funkcemi WFP pro přístup k různým objektům platformy filtrování. Funkce FwpmFilter* jsou uvedeny jako příklad pro přístup ke standardním objektům. Všechny ostatní funkce, které přistupují ke standardním objektům, následují FwpmFilter* model přístupu funkcí.
| Funkce | Objekt zkontrolován | Požadovaný přístup |
|---|---|---|
| FwpmEngineOpen0 | Motor | FWPM_ACTRL_OPEN |
| FwpmEngineGetOption0 | Motor | FWPM_ACTRL_READ |
| FwpmEngineSetOption0 | Motor | FWPM_ACTRL_WRITE |
| FwpmSessionCreateEnumHandle0 | Motor | FWPM_ACTRL_ENUM |
| FwpmTransactionBegin0 | Motor | FWPM_ACTRL_BEGIN_READ_TXN & FWPM_ACTRL_BEGIN_WRITE_TXN |
| FwpmFilterAdd0 | Poskytovatel kontejneru Vrstva Sub-Layer Vyznačení Kontext zprostředkovatele |
FWPM_ACTRL_ADDFWPM_ACTRL_ADD_LINK FWPM_ACTRL_ADD_LINK FWPM_ACTRL_ADD_LINK FWPM_ACTRL_ADD_LINK FWPM_ACTRL_ADD_LINK |
|
FwpmFilterDeleteById0 FwpmFilterDeleteByKey0 |
Filtr | ODSTRANIT |
|
FwpmFilterGetById0 FwpmFilterGetByKey0 |
Filtr | FWPM_ACTRL_READ |
| FwpmFilterCreateEnumHandle0 | Filtr kontejneru |
FWPM_ACTRL_ENUMFWPM_ACTRL_READ |
| FwpmFilterSubscribeChanges0 | Kontejner | FWPM_ACTRL_SUBSCRIBE |
| FwpmFilterSubscriptionsGet0 | Kontejner | FWPM_ACTRL_READ |
| IPsecGetStatistics0 | IPsec SA DB | FWPM_ACTRL_READ_STATS |
|
IPsecSaContextCreate0 IPsecSaContextGetSpi0 IPsecSaContextAddInbound0 IPsecSaContextAddOutbound0 |
IPsec SA DB | FWPM_ACTRL_ADD |
|
IPsecSaContextDeleteById0 IPsecSaContextExpire0 |
IPsec SA DB | ODSTRANIT |
| IPsecSaContextGetById0 | Databáze zabezpečení IPsec (SA DB) | FWPM_ACTRL_READ |
|
IPsecSaContextCreateEnumHandle0 IPsecSaCreateEnumHandle0 |
IPsec SA databáze (Internet Protocol Security Security Association Database) | FWPM_ACTRL_ENUM & FWPM_ACTRL_READ |
| IkeextGetStatistics0 | Databáze IKE SA | FWPM_ACTRL_READ_STATS |
| IkeextSaDeleteById0 | Databáze IKE SA | ODSTRANIT |
| IkeextSaGetById0 | Databáze IKE SA | FWPM_ACTRL_READ |
| IkeextSaCreateEnumHandle0 | Databáze IKE SA | FWPM_ACTRL_ENUM & FWPM_ACTRL_READ |
| FwpmNetEventCreateEnumHandle0 | Kontejner | FWPM_ACTRL_ENUM |
|
FwpmIPsecTunnelAdd0 FwpmIPsecTunnelDeleteByKey0 |
Žádné další kontroly přístupu nad rámec jednotlivých filtrů a kontextů zprostředkovatele |