Sdílet prostřednictvím


Kurz: Konfigurace Azure Active Directory B2C s platformou Arkose Labs

V tomto kurzu se dozvíte, jak integrovat ověřování Azure Active Directory B2C (Azure AD B2C) s platformou Arkose Labs Arkose Protect. Produkty Arkose Labs pomáhají organizacím proti útokům na roboty, převzetí účtu a podvodnému otevírání účtů.

Požadavky

Abyste mohli začít, budete potřebovat:

Popis scénáře

Integrace produktů Arkose Labs zahrnuje následující komponenty:

  • Arkose Protect Platform – služba pro ochranu před roboty a jiným automatizovaným zneužitím.
  • Azure AD registrace uživatele B2C – prostředí registrace, které používá platformu Arkose Labs
    • Vlastní konektory HTML, JavaScript a API se integrují s platformou Arkose.
  • Azure Functions – Váš hostovaný koncový bod rozhraní API, který funguje s funkcí konektorů rozhraní API
    • Toto rozhraní API ověří token relace Arkose Labs na straně serveru.
    • Další informace najdete v přehledu Azure Functions.

Následující diagram znázorňuje integraci platformy Arkose Labs s Azure AD B2C.

Diagram platformy Arkose Labs a architektury integrace Azure AD B2C

  1. Uživatel se zaregistruje a vytvoří účet. Uživatel vybere Odeslat a zobrazí se výzva k vynucení Arkose Labs.
  2. Uživatel dokončí výzvu. Azure AD B2C odešle stav do Arkose Labs, aby vygeneroval token.
  3. Arkose Labs odešle token do Azure AD B2C.
  4. Azure AD B2C volá zprostředkující webové rozhraní API pro předání registračního formuláře.
  5. Registrační formulář se odešle do Arkose Labs k ověření tokenu.
  6. Arkose Labs odesílá výsledky ověření do zprostředkujícího webového rozhraní API.
  7. Rozhraní API odešle výsledek úspěšného nebo neúspěšného Azure AD B2C.
  8. Pokud je výzva úspěšná, odešle se Azure AD B2C registrační formulář, který dokončí ověření.

Žádost o ukázku z Arkose Labs

  1. Přejděte na arkoselabs.com a rezervujte si ukázku.
  2. Vytvořte účet.
  3. Přejděte na přihlašovací stránku portálu Arkose .
  4. Na řídicím panelu přejděte do nastavení webu.
  5. Vyhledejte svůj veřejný klíč a privátní klíč. Tyto informace použijete později.

Poznámka

Hodnoty veřejného a privátního klíče jsou ARKOSE_PUBLIC_KEY a ARKOSE_PRIVATE_KEY. Viz Azure-Samples/active-directory-b2c-node-sign-up-user-flow-arkose.

Integrace s Azure AD B2C

Vytvoření vlastního atributu ArkoseSessionToken

Vytvoření vlastního atributu:

  1. Přihlaste se k Azure Portal a pak přejděte na Azure AD B2C.
  2. Vyberte Atributy uživatele.
  3. Vyberte Přidat.
  4. Jako název atributu zadejte ArkoseSessionToken .
  5. Vyberte Vytvořit.

Další informace: Definování vlastních atributů v Azure Active Directory B2C

Vytvoření toku uživatele

Tok uživatele slouží k registraci a přihlášení nebo registraci. Při registraci se zobrazí tok uživatele Arkose Labs.

  1. Vytváření toků uživatelů a vlastních zásad v Azure Active Directory B2C Pokud používáte tok uživatele, použijte doporučeno.

  2. V nastavení toku uživatele přejděte na Atributy uživatele.

  3. Vyberte deklaraci identity ArkoseSessionToken .

    Snímek obrazovky s tokenem relace Arkose v části Atributy uživatele

Konfigurace vlastního html, JavaScriptu a rozložení stránky

  1. Přejděte na Azure-Samples/active-directory-b2c-node-sign-up-user-flow-arkose.
  2. Vyhledejte šablonu HTML se značkami JavaScriptu <script> . Ty dělají tři věci:
  • Načtěte skript Arkose Labs, který vykreslí jejich widget a provede ověření Arkose Labs na straně klienta.

  • extension_ArkoseSessionToken Skryjte vstupní element a popisek odpovídající vlastnímu atributuArkoseSessionToken.

  • Když uživatel dokončí výzvu Arkose Labs, jeho odpověď se ověří a vygeneruje se token. Zpětné arkoseCallback volání ve vlastním JavaScriptu nastaví hodnotu na vygenerovanou extension_ArkoseSessionToken hodnotu tokenu. Tato hodnota se odešle do koncového bodu rozhraní API.

    Poznámka

    Přejděte na developer.arkoselabs.com, kde najdete pokyny na straně klienta. Postupujte podle pokynů k použití vlastního KÓDU HTML a JavaScriptu pro tok uživatele.

  1. V Azure-Samples upravte selfAsserted.html soubor tak, aby <ARKOSE_PUBLIC_KEY> odpovídal hodnotě, kterou jste vygenerovali pro ověření na straně klienta.

  2. Hostujte stránku HTML na webovém koncovém bodu s podporou sdílení prostředků mezi zdroji (CORS).

  3. Vytvoření účtu úložiště

  4. Podpora CORS pro Azure Storage

    Poznámka

    Pokud máte vlastní kód HTML, zkopírujte a vložte elementy <script> na stránku HTML.

  5. V Azure Portal přejděte na Azure AD B2C.

  6. Přejděte na Toky uživatelů.

  7. Vyberte tok uživatele.

  8. Vyberte Rozložení stránky.

  9. Vyberte Rozložení registrační stránky místního účtu.

  10. V části Použít obsah vlastní stránky vyberte ANO.

  11. Do pole Použít obsah vlastní stránky vložte vlastní identifikátor URI HTML.

  12. (Volitelné) Pokud používáte zprostředkovatele sociálních identit, opakujte postup pro registrační stránku účtu sociální sítě.

    Snímek obrazovky s možnostmi názvu rozložení a možností registrační stránky pro sociální účet v části Rozložení stránky

  13. V toku uživatele přejděte na Vlastnosti.

  14. Vyberte Povolit JavaScript.

Další informace: Povolení javascriptových verzí a rozložení stránek v Azure Active Directory B2C

Vytvoření a nasazení rozhraní API

V této části se předpokládá, že k nasazení Azure Functions používáte Visual Studio Code. K nasazení můžete použít Azure Portal, terminál nebo příkazový řádek.

Přejděte na Visual Studio Marketplace a nainstalujte Azure Functions pro Visual Studio Code.

Místní spuštění rozhraní API

  1. V editoru Visual Studio Code přejděte v levém navigačním panelu na rozšíření Azure.
  2. Vyberte složku Local Project (Místní projekt ) pro místní funkci Azure Functions.
  3. Stiskněte klávesu F5 nebo vyberte Ladit>Spustit ladění. Tento příkaz používá konfiguraci ladění vytvořenou funkcí Azure Functions.
  4. Azure Functions generuje soubory pro místní vývoj, instaluje závislosti a v případě potřeby nástroje Function Core.
  5. Na panelu Terminálu editoru Visual Studio Code se zobrazí výstup z nástroje Function Core.
  6. Po spuštění hostitele vyberte Alt a klikněte na místní adresu URL ve výstupu.
  7. Otevře se prohlížeč a spustí funkci.
  8. V průzkumníku Azure Functions klikněte pravým tlačítkem na funkci, aby se zobrazila adresa URL místně hostované funkce.

Přidání proměnných prostředí

Ukázka v této části chrání koncový bod webového rozhraní API při použití základního ověřování HTTP. Další informace najdete na stránce Internet Engineering Task Force RFC 7617: Základní ověřování.

Uživatelské jméno a heslo se ukládají jako proměnné prostředí, nikoli jako součást úložiště. Další informace najdete v tématu Kód a testování Azure Functions místně v souboru místního nastavení.

  1. V kořenové složce vytvořte soubor local.settings.json.
  2. Zkopírujte a vložte do souboru následující kód:
{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "",
    "FUNCTIONS_WORKER_RUNTIME": "node",
    "BASIC_AUTH_USERNAME": "<USERNAME>",
    "BASIC_AUTH_PASSWORD": "<PASSWORD>",
    "ARKOSE_PRIVATE_KEY": "<ARKOSE_PRIVATE_KEY>",
    "B2C_EXTENSIONS_APP_ID": "<B2C_EXTENSIONS_APP_ID>"
  }
}
  1. BASIC_AUTH_USERNAME a BASIC_AUTH_PASSWORD jsou přihlašovací údaje k ověření volání rozhraní API do funkce Azure Functions. Vyberte hodnoty.
  • < > ARKOSE_PRIVATE_KEY je tajný klíč na straně serveru, který jste vygenerovali na platformě Arkose Labs.
    • Volá ověřovací rozhraní API na straně serveru Arkose Labs, aby ověřilo hodnotu ArkoseSessionToken vygenerovanou front-endem.
    • Viz Pokyny na straně serveru.
  • < > B2C_EXTENSIONS_APP_ID je ID aplikace používané Azure AD B2C k ukládání vlastních atributů v adresáři.
  1. Přejděte na Registrace aplikací.

  2. Vyhledejte b2c-extensions-app.

  3. V podokně Přehled zkopírujte ID aplikace (klienta).

  4. - Odeberte znaky.

    Snímek obrazovky se zobrazeným názvem, ID aplikace a datem vytvoření v části Registrace aplikací

Nasazení aplikace na web

  1. Nasaďte funkci Azure Functions do cloudu. Další informace najdete v dokumentaci k Azure Functions.

  2. Zkopírujte webovou adresu URL koncového bodu funkce Azure Functions.

  3. Po nasazení vyberte možnost Nahrát nastavení .

  4. Proměnné prostředí se nahrají do nastavení aplikace služby App Service. Další informace najdete v tématu Nastavení aplikace v Azure.

    Poznámka

    Aplikaci funkcí můžete spravovat. Další informace o vývoji editoru Visual Studio Code pro Azure Functions najdete v tématu Nasazení souborů projektu.

Konfigurace a povolení konektoru rozhraní API

  1. Vytvořte konektor rozhraní API. Viz Přidání konektoru rozhraní API do toku uživatele registrace.

  2. Povolte ho pro tok uživatele.

    Snímek obrazovky se zobrazovaným názvem, adresou URL koncového bodu, uživatelským jménem a heslem v konfiguraci a konektoru rozhraní API

  • Adresa URL koncového bodu – adresa URL funkce, kterou jste zkopírovali při nasazování funkce Azure Functions.
  • Uživatelské jméno – uživatelské jméno, které jste definovali.
  • Heslo – heslo, které jste definovali
  1. V nastavení konektoru rozhraní API pro tok uživatele vyberte konektor rozhraní API, který se má vyvolat v části Před vytvořením uživatele.

  2. Rozhraní API ověří ArkoseSessionToken hodnotu.

    Snímek obrazovky s položkou Před vytvořením uživatele v části Konektory rozhraní API

Testování toku uživatele

  1. Otevřete tenanta Azure AD B2C.
  2. V části Zásady vyberte Toky uživatelů.
  3. Vyberte vytvořený tok uživatele.
  4. Vyberte Spustit tok uživatele.
  5. V části Aplikace vyberte zaregistrovanou aplikaci (příklad je JWT).
  6. Jako Adresa URL odpovědi vyberte adresu URL pro přesměrování.
  7. Vyberte Spustit tok uživatele.
  8. Proveďte tok registrace.
  9. Vytvořte účet.
  10. Odhlaste se.
  11. Proveďte tok přihlášení.
  12. Vyberte Pokračovat.
  13. Objeví se hádanka Arkose Labs.

Zdroje informací