← Cloudflare One / cloudflare-one / integrations / service-providers
Vlastní integrace stavu zařízení
Cloudflare One umožňuje vynucovat u vašich aplikací vlastní posture checks zařízení. To vyžaduje nastavení integrace service-to-service v Cloudflare One Client, která pravidelně volá externí API dle vaší volby, ať už jde o poskytovatele endpointu třetí strany, nebo o vlastní řešení. Při zavolání API obdrží od Cloudflare identifikační údaje zařízení a má vrátit hodnotu mezi 0 na 100. Poté můžete nastavit kontrolu stavu zařízení, která určí, zda se vrácená hodnota počítá jako splněno nebo nesplněno; můžete například povolit přístup uživateli pouze v případě, že hodnota stavu jeho zařízení je vyšší než 60.
sequenceDiagram
participant Cloudflare One Client
participant Cloudflare Access
participant External API
Cloudflare One Client->>Cloudflare Access: Client ID and Secret
Cloudflare Access->>External API: Application token
Cloudflare One Client->>External API: JSON with user and device identity
External API-->>Cloudflare One Client: JSON with 0-100 result
Požadavky na externí API
Integrace s vlastním poskytovatelem služby funguje s jakoukoli API službou, která splňuje následující specifikace. Příklad API pro vlastní integraci kontroly stavu zařízení najdete v Ukázkový kód pro Cloudflare Workers ↗.
Ověřování
Cloudflare One Client se ověřuje vůči externímu API prostřednictvím Cloudflare Access. Externí API by mělo ověřit token aplikace vydaný Cloudflare Access, aby byly zamítnuty všechny požadavky, které Access obejdou (například kvůli špatné konfiguraci sítě).
Data předaná externímu API
Cloudflare předá nakonfigurovanému API endpointu následující parametry. Tato data můžete použít k identifikaci zařízení a přiřazení posture skóre. U některých zařízení nemusí platit všechny identifikační údaje, v takovém případě zůstane pole prázdné. V rámci jednoho požadavku bude odesláno maximálně 1,000 zařízení.
| Pole | Popis |
|---|---|
device_id |
UUID zařízení přiřazené pomocí Cloudflare One Client |
email |
E-mailová adresa použitá k ověření Cloudflare One Client |
serial_number |
Sériové číslo zařízení |
mac_address |
MAC adresa zařízení |
virtual_ipv4 |
Virtuální IPv4 adresa zařízení |
hostname |
Název zařízení |
Příklad těla požadavku:
{
"devices": {
[
{
"device_id": "9ece5fab-7398-488a-a575-e25a9a3dec07",
"email": "[email protected]",
"serial_number": "jdR44P3d",
"mac_address": "74:1d:3e:23:e0:fe",
"virtual_ipv4": "100.96.0.10",
"hostname": "string",
},
{...},
{...}
]
}
}Očekávaná odpověď z externího API
Pro každý Cloudflare device_id, očekává se, že služba API vrátí skóre stavu a volitelně ID zařízení třetí strany.
| Pole | Popis |
|---|---|
s2s_id |
ID zařízení třetí strany (prázdný řetězec, pokud není k dispozici) |
score |
Celočíselná hodnota mezi 0 - 100 |
Příklad těla odpovědi:
{
"result": {
"9ece5fab-7398-488a-a575-e25a9a3dec07": {
"s2s_id": "",
"score": 10
},
"device_id2": {...},
"device_id3": {...}
}
}Nastavení vlastních kontrol stavu zařízení
1. Vytvořit service token
Cloudflare One Client se vůči externímu API bezpečně ověřuje pomocí Access Client ID a Access Client Secret. Pokud ještě Access Client ID a Access Client Secret nemáte, vytvořit nový token služby.
2. Vytvořte aplikaci Access
Dále zabezpečte externí API pomocí Cloudflare Access, aby se klient Cloudflare One Client mohl ověřit pomocí tokenu služby. Přidání API endpointu do Access:
-
Vytvořit Self-hosted aplikaci pro váš endpoint API.
-
Přidejte do aplikace následující zásadu Access. Ujistěte se, že Akce je nastaveno na Service Auth (ne Allow).
Akce Typ pravidla Selektor Hodnota Service Auth Include Service Token <TOKEN-NAME>
3. Přidejte integraci poskytovatele služeb
Chcete-li vytvořit vlastní integraci mezi službami:
- V Cloudflare dashboard ↗, přejděte na Zero Trust > Integrace > Poskytovatelé služeb.
- Vyberte Přidat nové.
- Vyberte Vlastní poskytovatel služeb.
- Zadejte libovolný název poskytovatele. Tento název se bude v celém dashboardu používat k označení tohoto připojení.
- V ID klienta Access a client secret Access, zadejte token služby Access použitý k ověření vůči vašemu externímu API.
- V Rest API URL, zadejte externí endpoint API, který Cloudflare použije k dotazování na informace o stavu zařízení (například
https://api.example.com). Další informace najdete v Požadavky na externí API. - V Frekvence dotazování, vyberte, jak často má Cloudflare One dotazovat externí API na informace.
- Vyberte Otestovat a uložit. Test ověřuje, zda se Cloudflare dokáže ověřit vůči adrese URL API pomocí zadaných přihlašovacích údajů Access.
Dále nakonfigurovat kontrolu stavu zařízení určit, zda dané skóre stavu zařízení odpovídá výsledku vyhovuje nebo nevyhovuje.
4. Nakonfigurujte kontrolu stavu zařízení
- V Cloudflare dashboard ↗, přejděte na Zero Trust > Znovupoužitelné komponenty > Kontroly stavu > Kontroly poskytovatelů služeb.
- Vyberte Přidejte kontrolu.
- Vyberte poskytovatele Custom service provider.
- Zadejte libovolný název kontroly stavu zařízení.
- Nakonfigurujte atributy potřebné, aby zařízení prošlo kontrolou stavu.
- Vyberte Save.
- Chcete-li provést test, přejděte na Insight > Protokoly > Protokoly stavu a ověřte, že kontrola stavu poskytovatele služeb vrací očekávané výsledky.
Nyní můžete tuto kontrolu stavu použít v zásada stavu zařízení.
Atributy stavu zařízení
| Selektor | Popis | Hodnota |
|---|---|---|
| Skóre | Skóre stavu vrácené externím API | 0 na 100 |