Konfigurace Azure Active Directory B2C s podnikovým přístupem k aplikacím Akamai pro jednotné přihlašování a zabezpečený hybridní přístup
V tomto ukázkovém kurzu se naučíte integrovat ověřování Azure Active Directory B2C (Azure AD B2C) s přístupem k podnikovým aplikacím Akamai. Akamai Enterprise Application Access je řešení nulová důvěra (Zero Trust) Network Access (ZTNA), které umožňuje zabezpečený vzdálený přístup k moderním a starším aplikacím, které se nacházejí v privátních datacentrech. Akamai Enterprise Application Access federuje s Azure AD B2C (Identity Provider) Azure AD B2C k ověřování uživatelů a pak pomocí zásad autorizace provádí průběžné vyhodnocování identity, zařízení, aplikace a kontextu žádosti před povolením přístupu k privátním aplikacím.
Tato funkce je dostupná jenom pro vlastní zásady. Pro kroky nastavení vyberte v předchozím selektoru vlastní zásady .
Předpoklady
Abyste mohli začít, budete potřebovat:
Smlouva Akamai Enterprise Access. Pokud ho nemáte, získejte bezplatnou zkušební verzi.
Předplatné Azure. Pokud předplatné nemáte, můžete získat bezplatný účet.
Tenant Azure AD B2C, který je propojený s vaším předplatným Azure.
Virtuální zařízení nasazené za bránou firewall ve vašem datacentru nebo v hybridních cloudových prostředích pro nasazení konektoru Akamai Enterprise Application Access Connector
Aplikace, která k ověřování používá hlavičky. V této ukázce použijeme aplikaci, která zobrazuje hlavičky docker header-demo-app.
NEBO aplikace OpenID Připojení (OIDC). V této ukázce použijeme webovou aplikaci ASP.NET MVC, která přihlašuje uživatele pomocí middlewaru Open Web Interface for .NET (OWIN) a platformy Microsoft Identity Platform.
Popis scénáře
V tomto scénáři povolíte ověřování Azure AD B2C koncovým uživatelům při pokusu o přístup k privátním aplikacím zabezpečeným podnikovým přístupem k aplikacím Akamai.
Součástí této integrace jsou:
Azure AD B2C: Zprostředkovatel identity SAML, který zodpovídá za ověřování koncových uživatelů.
Přístup k podnikovým aplikacím Akamai: Cloudová služba ZTNA, která je zodpovědná za zabezpečení přístupu k privátním aplikacím s průběžným vynucováním zásad ZTNA.
Akamai Enterprise Application Access Připojení or: Virtuální zařízení nasazené v privátním datacentru. Umožňuje zabezpečené připojení k privátním aplikacím bez otevření portů příchozí brány firewall datového centra.
Aplikace: Služba nebo aplikace nasazená ve vašem privátním datacentru, ke které potřebují koncoví uživatelé přístup.
Uživatel se ověří v Azure AD B2C (jako SAML IdP), který bude reagovat na přístup k podnikovým aplikacím Akamai (poskytovatel služeb) pomocí kontrolního výrazu SAML. Akamai Enterprise Application Access mapuje informace z kontrolního výrazu SAML a vytváří deklarace Identity OpenID nebo vloží hlavičky HTTP obsahující informace o uživateli. Akamai Enterprise Application Access pak předá aplikaci přístupnou prostřednictvím konektoru Akamai Enterprise Application Access. V naší ukázce aplikace zobrazí obsah těchto hlaviček. V případě použití aplikace OIDC zobrazí deklarace identity uživatele.
Následující diagram ukazuje, jak se Akamai podnikový přístup k aplikacím (EAA) integruje s Azure AD B2C.
Koncový uživatel se pokusí získat přístup k aplikaci hostované v privátním datacentru pomocí externí adresy URL aplikace zaregistrované v přístupu k podnikovým aplikacím Akamai.
Přístup podnikové aplikace Akamai přesměruje neověřeného koncového uživatele k ověřování do Azure AD B2C.
Po úspěšném ověření Azure AD B2C přesměruje uživatele zpět na Akamai Enterprise Application Access pomocí kontrolního výrazu SAML.
Přístup k podnikovým aplikacím Akamai používá informace o identitě z kontrolního výrazu SAML k identifikaci uživatele a určení, jestli má uživatel povolený přístup k požadované aplikaci.
Akamai Enterprise Application Access vytváří deklarace identity OIDC nebo vloží hlavičky HTTP, které se odesílají do aplikace.
Aplikace tyto informace používá k identifikaci ověřeného uživatele a vytvoření relace aplikace pro koncového uživatele.
Onboarding s podnikovým přístupem k aplikacím Akamai
Pokud chcete začít používat Akamai Enterprise Application Access, přečtěte si úvodní příručku pro přístup k podnikovým aplikacím Akamai.
Krok 1 : Přidání zprostředkovatele identity Azure AD B2C jako zprostředkovatele identity SAML v přístupu k podnikovým aplikacím Akamai
Přístup k podnikovým aplikacím Akamai podporuje federaci SAML s cloudovými zprostředkovatele identity, jako je Azure AD B2C. Přidejte Azure AD B2C jako zprostředkovatele identity SAML třetí strany v přístupu k podnikovým aplikacím Akamai.
Přihlášení ke službě Enterprise Center https://control.akamai.com/
V navigační nabídce centra Enterprise Center vyberte zprostředkovatele identity uživatelů identity & přístupu k > aplikacím>.
Vyberte Přidat zprostředkovatele identity (+).
Zadejte název, popis a vyberte typ poskytovatele jako SAML třetí strany.
Zvolte Pokračovat. Zobrazí se stránka konfigurace zprostředkovatele identity.
V Nastavení> General zadejte adresu URL pro server identity. Můžete vybrat Možnost Použít doménu Akamai nebo Použít svoji doménu. Pokud používáte vlastní doménu, použijte certifikát podepsaný svým držitelem nebo použijte nahraný vlastní certifikát.
V části Ověřování zadejte stejnou adresu URL, jakou jste definovali v předchozím kroku v části Obecné a vyberte Uložit.
Krok 2 – Registrace aplikace SAML v Azure AD B2C
Získejte úvodní balíčky vlastních zásad z GitHubu a pak aktualizujte soubory XML v úvodním balíčku LocalAccounts názvem tenanta Azure AD B2C:
Stáhněte si soubor .zip nebo naklonujte úložiště:
git clone https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack
Ve všech souborech v adresáři LocalAccounts nahraďte řetězec
yourtenant
názvem vašeho tenanta Azure AD B2C. Pokud je například název vašeho tenantafabrikam
B2C , všechny instanceyourtenant.onmicrosoft.com
státfabrikam.onmicrosoft.com
se .
Vytvořte podpisový certifikát pro Azure AD B2C, který podepíše odpověď SAML odeslanou do přístupu k podnikovým aplikacím Akamai:
a. Získejte certifikát. Pokud ještě certifikát nemáte, můžete použít certifikát podepsaný svým držitelem.
b. Nahrajte certifikát do tenanta Azure AD B2C. Poznamenejte si název, protože bude potřeba v
TechnicalProfile
uvedených krocích.Povolte své zásady pro připojení k aplikaci SAML.
a. Otevřete
LocalAccounts\TrustFrameworkExtensions.xml
v úvodní sadě vlastních zásad. Vyhledejte element ClaimsProviders . Pokud neexistuje, přidejte ho pod kořenový elementTrustFrameworkPolicy
a přidejte následující fragment kódu XML pro implementaci generátoru odpovědí SAML:<ClaimsProvider> <DisplayName>Akamai</DisplayName> <TechnicalProfiles> <!-- SAML Token Issuer technical profile --> <TechnicalProfile Id="AkamaiSaml2AssertionIssuer"> <DisplayName>Token Issuer</DisplayName> <Protocol Name="SAML2" /> <OutputTokenFormat>SAML2</OutputTokenFormat> <Metadata> <Item Key="IssuerUri">https://<REPLACE>.login.go.akamai-access.com/saml/sp/response</Item> </Metadata> <CryptographicKeys> <Key Id="SamlAssertionSigning" StorageReferenceId="B2C_1A_AkamaiSAMLSigningCert" /> <Key Id="SamlMessageSigning" StorageReferenceId="B2C_1A_AkamaiSAMLSigningCert" /> </CryptographicKeys> <InputClaims /> <OutputClaims /> <UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-issuerAkamai" /> </TechnicalProfile> <!-- Session management technical profile for SAML-based tokens --> <TechnicalProfile Id="SM-Saml-issuerAkamai"> <DisplayName>Session Management Provider</DisplayName> <Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.SamlSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> <Metadata> <Item Key="IncludeSessionIndex">false</Item> <Item Key="RegisterServiceProviders">false</Item> </Metadata> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>
b.
issuerUri
Nahraďte adresou URL Akamai definovanou v nastavení > přístupu k podnikové aplikaci Akamai Obecné v kroku 1.Příklad
<Item Key="IssuerUri">https://fabrikam.login.go.akamai-access.com/saml/sp/response</Item>
Nahraďte B2C_1A_AkamaiSAMLSigningCert názvem nahraného klíče zásady.
Krok 3 : Vytvoření zásady registrace nebo přihlašování nakonfigurované pro SAML
Vytvořte kopii
SignUpOrSignin.xml
souboru v pracovním adresáři úvodního balíčku a uložte ho pod novým názvem. Tento článek se používáSignUpOrSigninSAML.xml
jako příklad. Tento soubor je vaším souborem zásad pro předávající stranu. Je nakonfigurovaná tak, aby ve výchozím nastavení vystavovala odpověď JWT.SignUpOrSigninSAML.xml
Otevřete soubor v preferovaném editoru.Aktualizujte
tenant-name
název tenanta Azure AD B2C, změňtePolicyId
hodnotyPublicPolicyUri
zásad naB2C_1A_signup_signin_saml
ahttp://<tenant-name>.onmicrosoft.com/B2C_1A_signup_signin_saml
.<TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="tenant-name.onmicrosoft.com" PolicyId="B2C_1A_signup_signin_saml" PublicPolicyUri="http://<tenant-name>.onmicrosoft.com/B2C_1A_signup_signin_saml">
Na konci cesty uživatele obsahuje
SendClaims
Azure AD B2C krok. Tento krok odkazuje na technický profil vystavitele tokenů. Pokud chcete místo výchozí odpovědi JWT vydat odpověď SAML, upravteSendClaims
krok tak, aby odkazovat na nový technický profil vystavitele tokenu SAML.Saml2AssertionIssuer
Před element přidejte následující fragment kódu
<RelyingParty>
XML. Tento kód XML přepíše orchestraci krok 4 naSignUpOrSignIn
cestě uživatele za předpokladuLocalAccount
, že používáte vlastní počáteční balíčky zásad.Pokud jste začali z jiné složky v počátečním balíčku nebo jste upravili cestu uživatele přidáním nebo odebráním kroků orchestrace, ujistěte se, že číslo v
order
prvku odpovídá číslu zadanému na cestě uživatelem pro krok vystavitele tokenu. Například v ostatních složkách počátečního balíčku je odpovídající číslo kroku 7 proSocialAndLocalAccounts
, 6 proSocialAccounts
a 9 proSocialAndLocalAccountsWithMfa
.<UserJourneys> <UserJourney Id="SignUpOrSignIn"> <OrchestrationSteps> <OrchestrationStep Order="4" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="AkamaiSaml2AssertionIssuer"/> </OrchestrationSteps> </UserJourney> </UserJourneys>
Element předávající strany určuje protokol, který vaše aplikace používá. Výchozí hodnota je
OpenId
. PrvekProtocol
musí být změněn naSAML
. Výstupní deklarace identity vytvoří mapování deklarací identity na kontrolní výraz SAML.Nahraďte celý
<TechnicalProfile>
prvek v elementu následujícím kódem XML technického<RelyingParty>
profilu.<TechnicalProfile Id="PolicyProfile"> <DisplayName>PolicyProfile</DisplayName> <Protocol Name="SAML2"/> <OutputClaims> <OutputClaim ClaimTypeReferenceId="displayName" /> <OutputClaim ClaimTypeReferenceId="givenName" /> <OutputClaim ClaimTypeReferenceId="surname" /> <OutputClaim ClaimTypeReferenceId="email" DefaultValue="" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="" /> <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="objectId"/> </OutputClaims> <SubjectNamingInfo ClaimType="objectId" ExcludeAsClaim="true"/> </TechnicalProfile>
Konečný soubor zásad pro předávající stranu by měl vypadat jako následující kód XML:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <TrustFrameworkPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06" PolicySchemaVersion="0.3.0.0" TenantId="fabrikam.onmicrosoft.com" PolicyId="B2C_1A_signup_signin_saml" PublicPolicyUri="http://fabrikam.onmicrosoft.com/B2C_1A_signup_signin_saml"> <BasePolicy> <TenantId>fabrikam.onmicrosoft.com</TenantId> <PolicyId>B2C_1A_TrustFrameworkExtensions</PolicyId> </BasePolicy> <UserJourneys> <UserJourney Id="SignUpOrSignIn"> <OrchestrationSteps> <OrchestrationStep Order="7" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="AkamaiSaml2AssertionIssuer"/> </OrchestrationSteps> </UserJourney> </UserJourneys> <RelyingParty> <DefaultUserJourney ReferenceId="SignUpOrSignIn" /> <TechnicalProfile Id="PolicyProfile"> <DisplayName>PolicyProfile</DisplayName> <Protocol Name="SAML2"/> <OutputClaims> <OutputClaim ClaimTypeReferenceId="displayName" /> <OutputClaim ClaimTypeReferenceId="givenName" /> <OutputClaim ClaimTypeReferenceId="surname" /> <OutputClaim ClaimTypeReferenceId="email" DefaultValue="" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="" /> <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="objectId"/> </OutputClaims> <SubjectNamingInfo ClaimType="objectId" ExcludeAsClaim="true"/> </TechnicalProfile> </RelyingParty> </TrustFrameworkPolicy>
Poznámka:
Stejným postupem můžete implementovat i jiné typy toků, například přihlášení, resetování hesla nebo toky úprav profilu.
Krok 4 – Nahrání zásad
Uložte změny a nahrajte TrustFrameworkBase.xml
nové TrustFrameworkExtensions.xml
soubory a SignUpOrSigninSAML.xml
soubory zásad na web Azure Portal.
Přihlaste se k portálu Azure.
Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
Na webu Azure Portal vyhledejte a vyberte Azure AD B2C.
V části Zásady vyberte Architekturu prostředí identit. Vyberte Nahrát vlastní zásady a potom nahrajte dva soubory zásad, které jste změnili, v následujícím pořadí:
- Základní soubor, například
TrustFrameworkBase.xml
- Zásady rozšíření, například
TrustFrameworkExtensions.xml
- Pak zásady předávající strany, například
SignUpOrSigninSAML.xml
.
- Základní soubor, například
Krok 5: Stažení metadat SAML zprostředkovatele identity Azure AD B2C
Po nahrání souborů zásad použije Azure AD B2C informace o konfiguraci k vygenerování dokumentu metadat SAML zprostředkovatele identity, který bude aplikace používat. Dokument metadat SAML obsahuje umístění služeb, jako jsou metody přihlašování, metody odhlášení a certifikáty.
Metadata zásad Azure AD B2C jsou k dispozici na následující adrese URL:
https://<tenant-name>.b2clogin.com/<tenant-name>.onmicrosoft.com/<policy-name>/samlp/metadata
Nahraďte
<tenant-name>
názvem vašeho tenanta Azure AD B2C. Nahraďte<policy-name>
názvem (ID) zásady. Tady je příklad:https://fabrikam.b2clogin.com/fabrikam.onmicrosoft.com/B2C_1A_signup_signin_saml/samlp/metadata
Stáhněte si metadata SAML a uložte je místně na svém zařízení. K dokončení konfigurace v přístupu k podnikovým aplikacím Akamai je potřeba následující krok.
Krok 6 : Registrace aplikace Akamai Enterprise Application Access v Azure AD B2C
Aby Služba Azure AD B2C důvěřovala přístupu k podnikovým aplikacím Akamai, vytvořte registraci aplikace Azure AD B2C. Registrace obsahuje informace o konfiguraci, jako je koncový bod metadat aplikace.
Přihlaste se k portálu Azure.
Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
V nabídce vlevo vyberte Azure AD B2C. Nebo vyberte Všechny služby a pak vyhledejte a vyberte Azure AD B2C.
Vyberte Registrace aplikací a pak vyberte Nová registrace.
Zadejte název aplikace. Zadejte například Akamai B2C Enterprise Application Access.
V části Podporované typy účtů vyberte Pouze účty v tomto organizačním adresáři (pouze B2C – Jeden tenant).
V části Identifikátor URI přesměrování vyberte web a pak zadejte adresu URL Akamai definovanou v nastavení přístupu k podnikové aplikaci Akamai\Obecné v kroku 1. Například,
https://fabrikam.login.go.akamai-access.com/saml/sp/response
.Vyberte Zaregistrovat.
Krok 7 : Konfigurace aplikace Akamai Enterprise Application Access v Azure AD B2C
V případě SAML musíte v manifestu registrace aplikace nakonfigurovat několik vlastností.
Na webu Azure Portal přejděte k registraci aplikace, kterou jste vytvořili v kroku 3.
V části Spravovat vyberte Manifest a otevřete editor manifestu. Potom upravte vlastnosti popsané v následující části.
Přidání identifikátoru
Když aplikace SAML podnikového přístupu k aplikacím Akamai odešle požadavek do Azure AD B2C, požadavek na ověření SAML zahrnuje Issuer
atribut. Hodnota tohoto atributu je obvykle stejná jako hodnota metadat entityID
aplikace. Azure AD B2C používá tuto hodnotu k vyhledání registrace aplikace v adresáři a čtení konfigurace. Aby bylo vyhledávání úspěšné, identifierUri
musí být v manifestu registrace aplikace vyplněna hodnota, která odpovídá atributu Issuer
.
V manifestu identifierURIs
registrace vyhledejte parametr a přidejte hodnotu IssuerURI definovanou v kroku 2 Azure AD B2C ClaimsProvider.
Příklad:
"identifierUris": [
"https://fabrikam.login.go.akamai-access.com/saml/sp/response"
],
Tato hodnota bude stejná hodnota, která je nakonfigurovaná v požadavcích SAML AuthN pro EntityId
aplikaci a entityID
hodnota v metadatech aplikace. Budete také muset najít accessTokenAcceptedVersion
parametr a nastavit hodnotu na 2
.
Důležité
Pokud kód neaktualizujete accessTokenAcceptedVersion
2
, zobrazí se chybová zpráva vyžadující ověřenou doménu.
Krok 8 – Konfigurace nastavení ověřování pro zprostředkovatele identity Azure AD B2C v přístupu k podnikovým aplikacím Akamai
Aktualizujte zprostředkovatele identity Podnikové aplikace Akamai Pro přístup k Azure AD B2C ověřovacími informacemi, jako jsou adresy URL předávající strany.
Přihlášení ke službě Enterprise Center https://control.akamai.com/
V navigační nabídce centra Enterprise Center vyberte zprostředkovatele identity uživatelů identity & přístupu k > aplikacím>.
Vyberte název zprostředkovatele identity vytvořený v kroku 1.
Nahrajte soubor metadat SAML služby Azure AD B2C, který jste stáhli v kroku 5.
Pokud chcete nahrát soubor metadata.xml, vyberte Zvolit soubor.
Vyberte Uložit a nasadit.
Krok 9 : Nasazení podnikového přístupu k aplikacím Akamai Připojení orům ve vašem privátním datacentru
Pokud chcete povolit přístup k privátní aplikaci, nasaďte jeden nebo více konektorů Akamai Enterprise Application Access v privátním datacentru, kde se vaše aplikace nachází. Ujistěte se, že konektory budou mít přístup k vaší privátní aplikaci a mají odchozí přístup ke cloudu Akamai.
Krok 10 – Definování přístupové aplikace v podnikové aplikaci Akamai pro privátní aplikaci
Definujte a nasaďte aplikaci pro přístup k accessu v podnikové aplikaci Akamai.
Při definování accessové aplikace
Přidružte ji k definici zprostředkovatele identity B2C podnikové aplikace, kterou jste vytvořili v předchozích krocích.
Nakonfigurujte ověřování směřující k aplikacím, aby se jednotné přihlašování povolilo do privátní aplikace:
Možnost 1: Hlavičky HTTP
V této ukázce použijeme aplikaci, která zobrazuje hlavičky docker header-demo-app. Jakmile je aplikace nasazená v privátním prostředí a konektor je schopný získat přístup k aplikaci, vytvořte vlastní aplikaci typu HTTP podle dokumentace Akamai Nakonfigurujte vlastní hlavičky HTTP pro přístupovou aplikaci.
- V části Ověřování vyberte zprostředkovatele IDENTITY SAML Azure AD B2C vytvořeného v předchozích krocích.
- V části Upřesnit aplikace namapujte hlavičku HTTP na atributy SAML vydané službou Azure AD B2C v odpovědi SAML po úspěšném ověření.
Příklad:
Název záhlaví | Atribut |
---|---|
ps-sso-first | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name |
ps-sso-last | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname |
ps-sso-EmailAddress | Emailaddress |
ps-sso-uid | objectId |
Otestujte aplikaci výběrem adresy URL Akamai pro webovou aplikaci vlastního typu HTTP, kterou jste vytvořili.
Možnost 2: OpenID Připojení
V této ukázce použijeme webovou aplikaci ASP.NET MVC, která přihlašuje uživatele pomocí middlewaru Open Web Interface for .NET (OWIN) a platformy Microsoft Identity Platform.
Nakonfigurujte přemostění OIDC na SAML v sadě IDP SAML Azure AD B2C vytvořené v předchozích krocích.
Vytvořte vlastní aplikaci typu HTTP podle konfigurace openID Připojení pro aplikaci pro access.
V části Ověřování vyberte zprostředkovatele IDENTITY SAML Azure AD B2C vytvořeného v předchozích krocích podle hlavičkové aplikace HTTP.
V části Upřesnit vyberte OpenID Připojení 1.0 jako ověřovací mechanismus a pak vyberte Uložit.
Zobrazí se nová karta OpenID , zkopírujte adresu URL zjišťování, která je potřeba později v krocích při konfiguraci komponenty OWIN pro testovací aplikaci.
V části Deklarace identity definujte deklarace identity, které Akamai vydá pro aplikaci OIDC, a namapujte jejich hodnoty na atributy SAML poskytované službou Azure AD B2C v odpovědi SAML po úspěšném ověření. Tyto deklarace identity musí mapovat, co jste definovali v předchozím kroku při konfiguraci přemostění OIDC na přemostění SAML v Azure AD B2C SAML IdP.
Nahraďte spouštěcí třídu následujícím kódem ve webové aplikaci ASP.NET MVC.
Tyto několik změn konfiguruje udělení toku autorizačního kódu, autorizační kód se uplatní pro tokeny v koncovém bodu tokenu pro aplikaci a zavádí adresu metadat pro nastavení koncového bodu zjišťování pro získání metadat od Akamai.
public class Startup { // The Client ID is used by the application to uniquely identify itself to Azure AD. string clientId = System.Configuration.ConfigurationManager.AppSettings["ClientId"]; //App Client Secret to redeem the code for an access token string ClientSecret = System.Configuration.ConfigurationManager.AppSettings["ClientSecret"]; // RedirectUri is the URL where the user will be redirected to after they sign in. string redirectUri = System.Configuration.ConfigurationManager.AppSettings["RedirectUri"]; // PostLogoutRedirectUri is the URL where the user will be redirected to after they sign out string PostLogoutRedirectUri = System.Configuration.ConfigurationManager.AppSettings["PostLogoutRedirectUri"]; //Authority is the URL for authority string authority = System.Configuration.ConfigurationManager.AppSettings["Authority"]; //discovery endpoint for obtaining metadata string MetadataAddress = System.Configuration.ConfigurationManager.AppSettings["MetadataAddress"]; /// <summary> /// Configure OWIN to use OpenIdConnect /// </summary> /// <param name="app"></param> public void Configuration(IAppBuilder app) { app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType); app.UseCookieAuthentication(new CookieAuthenticationOptions()); app.UseOpenIdConnectAuthentication( new OpenIdConnectAuthenticationOptions { // Sets the ClientId, authority, RedirectUri as obtained from web.config ClientId = clientId, Authority = authority, RedirectUri = redirectUri, MetadataAddress = MetadataAddress, // PostLogoutRedirectUri is the page that users will be redirected to after sign-out. In this case, it is using the home page PostLogoutRedirectUri = redirectUri, RedeemCode = true, Scope = OpenIdConnectScope.OpenIdProfile, // ResponseType is set to request the code id_token - which contains basic information about the signed-in user ResponseType = OpenIdConnectResponseType.Code, // OpenIdConnectAuthenticationNotifications configures OWIN to send notification of failed authentications to OnAuthenticationFailed method Notifications = new OpenIdConnectAuthenticationNotifications { AuthenticationFailed = OnAuthenticationFailed } } ); } /// <summary> /// Handle failed authentication requests by redirecting the user to the home page with an error in the query string /// </summary> /// <param name="context"></param> /// <returns></returns> private Task OnAuthenticationFailed(AuthenticationFailedNotification<OpenIdConnectMessage, OpenIdConnectAuthenticationOptions> context) { context.HandleResponse(); context.Response.Redirect("/?errormessage=" + context.Exception.Message); return Task.FromResult(0); } }
web.config
Do souboru přidejte adresu Metadata, nahraďte clientId, clientsecret, authority, redirectUri a PostLogoutRedirectUri hodnotami z aplikace Akamai vappSettings
.Tyto hodnoty najdete v předchozím kroku 5 na kartě OpenID pro aplikaci HTTP Akamai, kde jste vytvořili
Discovery URL=MetadataAddress
.redirectUri
je místní adresa konektoru Akamai, která se má přeložit na místní aplikaci OIDC.Authority
je authorization_endpoint, kterou najdete v.well-known/openid-configuration
dokumentu.Adresa URL zjišťování:
https://fabrikam.login.go.akamai-access.com/.well-known/openid-configuration
<appSettings> <add key="ClientId" value="xxxxxxxxxxxxxxxxxx" /> <add key="ClientSecret" value="xxxxxxxxxxxxxxxxxx" /> <add key="Authority" value="https://fabrikam.login.go.akamai-access.com/oidc/oauth" /> <add key="redirectUri" value="http://oidcapp.identity.mistermik.com/" /> <add key="PostLogoutRedirectUri" value="https://oidc-test.go.akamai-access.com/" /> <add key="MetadataAddress" value="https://fabrikam.login.go.akamai-access.com/.well-known/openid-configuration" /> </appSettings>
Otestujte aplikaci výběrem adresy URL Akamai pro vytvořenou vlastní webovou aplikaci typu HTTP.
Testování řešení
Přejděte na adresu URL aplikace pomocí externí adresy URL zadané v přístupu k podnikovým aplikacím Akamai.
Neověřený uživatel se přesměruje na přihlašovací stránku Azure AD B2C.
Ze seznamu na stránce vyberte zprostředkovatele identity.
Přihlaste se jako koncový uživatel pomocí přihlašovacích údajů propojených s Azure AD B2C.
Po úspěšném ověření se koncový uživatel přesměruje zpět do aplikace a přihlásí se k aplikaci jako koncový uživatel.