Přehled zabezpečení pro Azure Cognitive Search

Tento článek popisuje funkce zabezpečení v Azure Kognitivní hledání, které chrání data a operace.

Vzory síťových přenosů

Vyhledávací služba je hostovaná v Azure a obvykle se k ní používá přes připojení k veřejné síti. Porozumění vzorům přístupu ke službě vám může pomáhat při navrhování strategie zabezpečení, která efektivně brání neoprávněnému přístupu k prohledávatelné obsahu.

Kognitivní hledání má tři základní vzory síťového provozu:

  • Příchozí požadavky klienta na službu vyhledávání (převládající vzor)
  • Odchozí žádosti vydávané vyhledávací službou do jiných služeb v Azure a jinde
  • Interní požadavky služby na službu přes zabezpečenou páteřní síť Microsoft

Vstupní požadavky jsou v rozsahu vytváření objektů, načítání dat a dotazování. Pro příchozí přístup k datům a operacím můžete implementovat průběh bezpečnostních opatření, počínaje pomocí klíčů rozhraní API na žádosti. Pak můžete doplnit buď příchozí pravidla v bráně firewall protokolu IP, nebo vytvořit privátní koncové body, které plně chrání vaši službu před veřejným internetem.

Odchozí požadavky mohou zahrnovat operace čtení i zápisu. Primárním agentem odchozího volání je indexer a prvek dovednosti. V případě indexerů zahrnuje operace čtení i trhliny dokumentů a přijímání dat. indexer může také zapisovat do Azure Storage při vytváření úložišť znalostí, trvalých rozšíření uložených v mezipaměti a trvalých ladicích cvičení. Nakonec může dovednosti také zahrnovat vlastní dovednosti, které spouštějí externí kód, například v Azure Functions nebo ve webové aplikaci.

mezi interní požadavky patří volání mezi službami pro úlohy, jako je protokolování diagnostiky, šifrování, ověřování a autorizace prostřednictvím Azure Active Directory, připojení privátních koncových bodů a požadavky, které byly Cognitive Servicesy pro integrované dovednosti.

Zabezpečení sítě

Příchozí funkce zabezpečení chrání koncový bod vyhledávací služby prostřednictvím zvýšené úrovně zabezpečení a složitosti. Kognitivní hledání používá ověřování založené na klíčích, kde všechny požadavky vyžadují klíč rozhraní API pro ověřený přístup.

Volitelně můžete implementovat další vrstvy řízení tím, že nastavíte pravidla brány firewall, která omezují přístup na konkrétní IP adresy. Pro pokročilou ochranu můžete povolit privátní propojení Azure a chránit koncový bod služby ze všech internetových přenosů.

Připojení přes veřejný internet

Ve výchozím nastavení se ke koncovému bodu služby vyhledávání přistupuje prostřednictvím veřejného cloudu, a to pomocí ověřování založeného na klíčích pro správce nebo pro přístup k aplikaci Query ke koncovému bodu služby Search. Jsou vyžadovány klíče. Odeslání platného klíče se považuje za důkaz, že požadavek pochází z důvěryhodné entity. Ověřování na základě klíčů je popsáno v další části. Bez klíčů rozhraní API získáte na žádost 401 a 404 odpovědi.

Připojení prostřednictvím bran firewall protokolu IP

Pro další řízení přístupu ke službě vyhledávání můžete vytvořit pravidla brány firewall, která umožňují přístup ke konkrétní IP adrese nebo rozsahu IP adres. Všechna připojení klientů musí být provedena prostřednictvím povolené IP adresy, jinak se připojení zamítlo.

Diagram ukázkové architektury pro omezený přístup IP

K nakonfigurování příchozího přístupumůžete použít portál.

Alternativně můžete použít rozhraní REST API pro správu. Počínaje rozhraním API verze 2020-03-13 s parametrem IpRule můžete omezit přístup ke službě tím, že identifikujete IP adresy, jednotlivě nebo v rozsahu, který chcete udělit přístup k vaší vyhledávací službě.

Připojení privátním koncovým bodem (izolace sítě, žádný internetový provoz)

Můžete vytvořit privátní koncový bod pro Azure kognitivní hledání umožňuje klientovi ve virtuální síti zabezpečený přístup k datům v indexu vyhledávání prostřednictvím privátního propojení.

Privátní koncový bod používá IP adresu z adresního prostoru virtuální sítě pro připojení k vaší vyhledávací službě. Síťový provoz mezi klientem a vyhledávací službou prochází přes virtuální síť a privátní odkaz na páteřní síti Microsoftu, což eliminuje expozici veřejného Internetu. VIRTUÁLNÍ síť umožňuje zabezpečenou komunikaci mezi prostředky, s vaší místní sítí i s internetem.

Diagram ukázkové architektury pro přístup k privátnímu koncovému bodu

I když toto řešení je nejbezpečnější, je za použití dalších služeb k dispozici náklady, abyste měli jistotu, že budete mít jasné znalosti výhod před začneteí. Další informace o cenách najdete na stránce s cenami. Další informace o tom, jak tyto komponenty spolupracují, najdete v videu v horní části tohoto článku. Pokrytí možnosti privátní koncový bod začíná na videu na 5:48. Pokyny k nastavení koncového bodu najdete v tématu Vytvoření privátního koncového bodu pro Azure kognitivní hledání.

Odchozí připojení k externím službám

Indexery a dovednosti jsou oba objekty, které mohou vytvořit externí připojení. V rámci definice objektu budete poskytovat informace o připojení pomocí některého z těchto mechanismů.

  • Přihlašovací údaje v připojovacím řetězci

  • Spravovaná identita v připojovacím řetězci

    můžete nastavit spravovanou identitu, aby prohledala důvěryhodnou službu při přístupu k datům z Azure Storage, Azure SQL, Cosmos DB nebo jiných zdrojů dat azure. Spravovaná identita je náhradou za přihlašovací údaje nebo přístupové klíče k připojení. další informace o této funkci najdete v tématu Připojení ke zdroji dat pomocí spravované identity.

Authentication

Pro příchozí požadavky na vyhledávací službu je ověřování prostřednictvím klíče rozhraní API (řetězec tvořený náhodně generovanými čísly a písmeny), který potvrzuje, že požadavek pochází z důvěryhodného zdroje. alternativně je k dispozici nová podpora Azure Active Directory ověřování a autorizace na základě rolí, která je aktuálně ve verzi preview.

Odchozí požadavky prováděné indexerem podléhají ověřování externí službou. Podslužba indexeru v Kognitivní hledání může být v Azure vytvořená jako důvěryhodná služba, která se připojuje k jiným službám pomocí spravované identity. Další informace najdete v tématu nastavení připojení indexeru ke zdroji dat pomocí spravované identity.

Autorizace

Kognitivní hledání poskytuje různé autorizační modely pro správu obsahu a správu služeb.

Autorizace pro správu obsahu

Autorizace obsahu a operací souvisejících s obsahem je buď přístup pro zápis, který je odvozený prostřednictvím klíče rozhraní API , který je k dispozici na žádosti. Klíč rozhraní API je mechanismus ověřování, ale také autorizuje přístup v závislosti na typu klíče rozhraní API.

  • Klíč správce (povolí přístup pro čtení a zápis pro operace vytvoření-čtení-aktualizace-odstranění ve vyhledávací službě), vytvořené při zřízení služby

  • Klíč dotazu (umožňuje přístup jen pro čtení ke kolekci dokumentů v indexu), vytvořený podle potřeby a je navržený pro klientské aplikace, které vydávají dotazy

V kódu aplikace zadáte koncový bod a klíč rozhraní API, který umožní přístup k obsahu a možnostem. Koncovým bodem může být samotná služba, kolekce indexů, konkrétní index, kolekce dokumentů nebo konkrétní dokument. Při zřetězení se jedná o vzorec zabezpečení, který chrání obsah a operace (například požadavek na vytvoření nebo aktualizaci) a úroveň oprávnění (úplná oprávnění nebo oprávnění jen pro čtení na základě klíče).

Poznámka

Autorizace pro operace roviny dat pomocí řízení přístupu na základě role (RBAC) v Azure je teď ve verzi Preview. Tuto funkci Preview můžete použít, pokud chcete místo klíčů rozhraní API použít přiřazení rolí.

Řízení přístupu k indexům

V Azure Kognitivní hledání není jednotlivý index zabezpečitelným objektem. Místo toho se přístup k indexu určí na úrovni služby (přístup pro čtení nebo zápis na základě toho, který klíč rozhraní API zadáte), spolu s kontextem operace.

Pro přístup jen pro čtení můžete strukturovat požadavky na dotazy pro připojení pomocí klíče dotazua zahrnout konkrétní index používaný vaší aplikací. V požadavku na dotaz neexistuje koncept spojování indexů ani přístup k několika indexům současně, takže všechny požadavky cílí na jeden index podle definice. V důsledku toho konstrukce samotné žádosti o dotaz (klíč a jeden cílový index) definuje hranici zabezpečení.

Přístup správců a vývojářů k indexům není odlišený: musí mít přístup pro zápis k vytváření, odstraňování a aktualizaci objektů spravovaných službou. Kdokoli s klíčem správce ke službě může číst, upravovat nebo odstraňovat libovolný index ve stejné službě. Pro ochranu proti náhodnému nebo škodlivému odstranění indexů je vaše interní Správa zdrojového kódu pro assety kódů nápravou pro vrácení nechtěného odstranění nebo změny indexu. Azure Kognitivní hledání má v rámci clusteru převzetí služeb při selhání, aby se zajistila dostupnost, ale neukládá ani neprovádí vlastní kód používaný k vytváření nebo načítání indexů.

Pro řešení s více architekturami, které vyžadují hranice zabezpečení na úrovni indexu, taková řešení obvykle zahrnují střední úroveň, kterou zákazníci používají ke zpracování izolace indexu. Další informace o případu použití s více klienty najdete v tématu vzory návrhu pro víceklientské aplikace SaaS a Azure kognitivní hledání.

Řízení přístupu k dokumentům

Pokud pro výsledky hledání potřebujete podrobný ovládací prvek pro jednotlivé uživatele, můžete pro své dotazy vytvořit filtry zabezpečení a vracet dokumenty přidružené k dané identitě zabezpečení.

V koncepčním ekvivalentu "zabezpečení na úrovni řádku" se autorizace obsahu v rámci indexu neimplementuje nativně pomocí předdefinovaných rolí nebo přiřazení rolí, které se mapují na entity v Azure Active Directory. všechna oprávnění uživatelů k datům v externích systémech, jako je například Cosmos DB, se s těmito daty neodesílají jako indexovaná Kognitivní hledání.

Alternativním řešením pro řešení, která vyžadují "zabezpečení na úrovni řádku", je vytvoření pole ve zdroji dat, které představuje skupinu zabezpečení nebo identitu uživatele, a následné použití filtrů v Kognitivní hledání k selektivnímu oříznutí výsledků hledání dokumentů a obsahu na základě identit. Následující tabulka popisuje dva přístupy k oříznutí výsledků hledání neoprávněného obsahu.

Přístup Popis
Oříznutí zabezpečení na základě filtrů identity Dokumentuje základní pracovní postup pro implementaci řízení přístupu identity uživatele. Zahrnuje přidávání identifikátorů zabezpečení do indexu a pak vysvětluje filtrování na základě tohoto pole za účelem oříznutí výsledků zakázaného obsahu.
oříznutí zabezpečení na základě Azure Active Directory identit tento článek se rozbalí v předchozím článku, který poskytuje kroky pro načtení identit z Azure Active Directory (Azure AD), jedné z bezplatných služeb na cloudové platformě Azure.

Autorizace pro správu služeb

Operace správy služeb jsou autorizované prostřednictvím řízení přístupu na základě role v Azure (Azure RBAC). Azure RBAC je autorizační systém založený na Azure Resource Manager pro zřizování prostředků Azure.

V Azure Kognitivní hledání se Správce prostředků používá k vytvoření nebo odstranění služby, správě klíčů rozhraní API a škálování služby. V takovém případě přiřazení rolí Azure určí, kdo může provádět tyto úlohy bez ohledu na to, jestli používají portál, POWERSHELLnebo rozhraní REST API pro správu.

Pro správu služby Search jsou definovány tři základní role . Přiřazení rolí lze provádět pomocí jakékoli podporované metodologie (portál, PowerShellu a tak dále) a jsou pro ně dodržena platná služba. Role vlastníka a přispěvatele můžou provádět celou řadu funkcí pro správu. Roli Čtenář můžete přiřadit uživatelům, kteří zobrazují jenom základní informace.

Poznámka

Pomocí mechanismů pro práci v rámci Azure můžete uzamknout předplatné nebo prostředek, abyste zabránili nechtěnému nebo neautorizovanému odstranění služby vyhledávání uživatelů s právy správce. Další informace najdete v tématu uzamčení prostředků, aby se zabránilo neočekávanému odstranění.

Ochrana dat

Ve vrstvě úložiště je šifrování dat integrované pro veškerý obsah spravovaný službou uložený na disk, včetně indexů, map synonym a definic indexerů, zdrojů dat a dovednosti. Volitelně můžete přidat klíče spravované zákazníkem (CMK) pro dodatečné šifrování indexovaného obsahu. Pro služby vytvořené po 1 2020. srpna se šifrování CMK rozšíří na data na dočasných discích, pro úplné "dvojité šifrování" indexovaného obsahu.

Přenášená data

V Azure Kognitivní hledání začíná šifrování připojení a přenosů a rozšiřuje se na obsah uložený na disku. Pro vyhledávací služby na veřejném Internetu Azure Kognitivní hledání naslouchá na portu HTTPS 443. Všechna připojení klient-služba používají šifrování TLS 1,2. Starší verze (1,0 nebo 1,1) nejsou podporovány.

Zašifrovaná data v klidovém stavu

V následující tabulce jsou popsány datové modelypro data, která jsou interně zpracovávána pomocí vyhledávací služby. Některé funkce, jako je znalostní báze, přírůstkové obohacení a indexování založené na indexerech, čtou nebo zapisují do datových struktur v jiných službách Azure. Tyto služby mají svou vlastní úroveň podpory šifrování, která je oddělená od Azure Kognitivní hledání.

Modelování Klíče      Požadavků      Omezení Platí pro
šifrování na straně serveru Klíče spravované Microsoftem Žádný (integrovaný) Žádná, k dispozici na všech úrovních ve všech oblastech pro obsah vytvořený po lednu 24 2018. Obsah (indexy a mapy synonym) a definice (indexery, zdroje dat, dovednosti)
šifrování na straně serveru klíče spravované zákazníkem Azure Key Vault K dispozici pro Fakturovatelné úrovně pro obsah vytvořený po lednu 2019 ve všech oblastech. Obsah (indexy a mapy synonym) na datových discích
dvojité šifrování na straně serveru klíče spravované zákazníkem Azure Key Vault K dispozici v fakturovaných úrovních ve vybraných oblastech ve službě Search po 1 2020. srpna. Obsah (indexy a mapy synonym) na datových discích a na dočasných discích

Klíče spravované službou

šifrování spravované službou je interní operace od microsoftu, která je založená na šifrování služby Azure Storages využitím 256 šifrování AES. K tomu dochází automaticky při každém indexování, včetně přírůstkových aktualizací indexů, které nejsou plně šifrované (vytvořené před lednem 2018).

Klíče spravované zákazníkem (CMK)

Klíče spravované zákazníkem vyžadují další fakturovatelnou službu, Azure Key Vault, která může být v jiné oblasti, ale v rámci stejného předplatného jako Azure Kognitivní hledání. Povolením šifrování CMK se zvýší velikost indexu a sníží se výkon dotazů. Na základě pozorování k datu můžete očekávat zvýšení 30% až 60% v době dotazu, přestože skutečný výkon se bude lišit v závislosti na definici indexu a typech dotazů. Z důvodu tohoto dopadu na výkon doporučujeme tuto funkci povolit pouze pro indexy, které ji skutečně vyžadují. Další informace najdete v tématu Konfigurace šifrovacích klíčů spravovaných zákazníkem v Azure kognitivní hledání.

Dvojité šifrování

V Azure Kognitivní hledání je dvojité šifrování rozšířením CMK. Považuje se za oboustranné šifrování (jednou pomocí CMK a znovu klíče spravované službou) a komplexní v oboru zahrnující dlouhodobé úložiště, které se zapisuje na datový disk, a krátkodobé úložiště zapsané na dočasné disky. Dvojité šifrování je implementováno ve službách vytvořených po určitém datu. Další informace najdete v tématu dvojité šifrování.

Správa zabezpečení

Klíče rozhraní API

Při ověřování založeném na klíčích rozhraní API byste měli mít plán pro opětovné generování klíče správce v pravidelných intervalech podle osvědčených postupů zabezpečení Azure. Pro službu vyhledávání existuje maximálně dva klíče správce. Další informace o zabezpečení a správě klíčů rozhraní API najdete v tématu Vytvoření a Správa klíčů rozhraní API.

Protokoly aktivit a diagnostické protokoly

Kognitivní hledání neprotokoluje identity uživatelů, takže nebudete moct v protokolech odkazovat na informace o konkrétním uživateli. Služba ale provede operace log Create-Read-Update-Delete, které by mohly být schopné korelovat s ostatními protokoly a pochopit konkrétní informace v agentuře.

Pomocí výstrah a infrastruktury protokolování v Azure můžete vybírat špičky svazku dotazů nebo jiné akce, které se odchylují od očekávaných úloh. Další informace o nastavení protokolů najdete v tématu shromažďování a analýza dat protokolů a monitorování požadavků na dotazy.

Certifikace a dodržování předpisů

Azure Kognitivní hledání se účastní pravidelných auditů a byl certifikovaný na základě řady celosvětových, regionálních a specifických standardů pro veřejný cloud a Azure Government. úplný seznam najdete v dokumentu white paper o kompatibilitě Microsoft Azure na stránce oficiálních sestav auditu.

V případě dodržování předpisů můžete pomocí Azure Policy implementovat osvědčené postupy pro zabezpečení Azurev rámci vysokého zabezpečení. Srovnávací test zabezpečení Azure je kolekcí doporučení zabezpečení, která se mapují na klíčové akce, které byste měli vzít v úvahu při zmírnění hrozeb pro služby a data. V současné době je k dispozici 11 kontrol zabezpečení, včetně zabezpečení sítě, protokolování a monitorovánía ochrany dat .

Azure Policy je funkce integrovaná do Azure, která vám pomůže spravovat dodržování předpisů pro několik standardů, včetně standardů Azure Security test. U dobře známých srovnávacích testů Azure Policy poskytuje předdefinované definice, které poskytují obě kritéria, i odpověď, která řeší nedodržování předpisů.

V případě Azure Kognitivní hledání existuje v současné době jedna integrovaná definice. Slouží k protokolování diagnostiky. Pomocí této integrované sady můžete přiřadit zásadu, která identifikuje libovolnou vyhledávací službu, která postrádá protokolování diagnostiky, a pak ji zapne. Další informace najdete v tématu Azure Policy kontroly dodržování předpisů pro Azure kognitivní hledání.

Podívejte se na toto video

Podívejte se na toto video s rychlým tempem, kde se dozvíte přehled architektury zabezpečení a jednotlivých kategorií funkcí.

Viz také