Migrera ACS-namnområden till Google OpenID Connect
Det här avsnittet gäller ägare av ACCESS Control Service (ACS) 2.0-namnområden som för närvarande använder Google som identitetsprovider. ACS tillhandahåller den här funktionen med googles OpenID 2.0-implementering. Google planerar att avbryta OpenID 2.0-supporten senast den 20 april 2015. ACS-namnområden fortsätter att fungera med Googles OpenID 2.0-implementering fram till den 1 juni 2015, då du måste slutföra migreringen av dessa namnområden för att använda Googles OpenID Connect-implementering, annars kommer användarna inte längre att kunna logga in på ditt program med ett Google-konto. Om du migrerar dina ACS-namnområden till OpenID Connect orsakas inte programavbrott. Med ett undantag (se anmärkningen nedan) är den här migreringen möjlig utan att ändra programkoden. När du har migrerat dina ACS-namnområden för att använda OpenID Connect måste du migrera användarnas identifierare i serverdelen till OpenID Connect-identifierare. Den här migreringen måste slutföras senast den 1 januari 2017. Det kräver kodändringar i serverdelen. Se den viktiga anmärkningen nedan för mer information om båda faserna i migreringen.
Viktig
Observera följande viktiga datum och slutför de åtgärder som krävs för varje datum för att säkerställa att dina ACS-namnområden som använder Google som identitetsprovider fortsätter att fungera:
-
1 juni 2015 – ACS-namnområden slutar fungera med Googles OpenID 2.0-implementering. Du måste slutföra acs-namnrymdsmigreringen för att använda Google OpenID Connect senast det här datumet. Innan det här datumet kan du återställa till OpenID 2.0 om du stöter på problem under migreringen. För namnområden som inte har migrerats före det här datumet kommer användarna inte längre att kunna logga in med ett Google-konto och visas med en sida som anger att OpenID 2.0 för Google-konton har försvunnit. Om du vill återställa inloggningsfunktionen med Google-konton måste du migrera namnområdet.
I de flesta fall bör inga programkodändringar krävas. Om du har regeln "genomströmning av alla anspråk" för Google som identitetsprovider i en regelgrupp som är associerad med ditt program kan du dock behöva göra kodändringar. Detta beror på att vid migrering blir en ny anspråkstyp (Ämne) tillgänglig för ACS från Google, och du kan behöva göra kodändringar för att säkerställa att ditt program kan hantera förekomsten av den nya anspråkstypen korrekt. För att slutföra migreringen behöver du inte bearbeta den nya anspråkstypen i ditt program.
-
1 januari 2017 – Googles OpenID 2.0- och OpenID Connect-implementeringar använder olika identifierare för att unikt identifiera Google-användare. När du migrerar ditt ACS-namnområde gör ACS två identifierare, både den aktuella OpenID 2.0-identifieraren och den nya OpenID Connect-identifieraren, tillgängliga för ditt program. Du måste växla användarnas identifierare i serverdelssystemet till OpenID Connect-identifierare senast det här datumet och börja använda endast OpenID Connect-identifierare framöver. Detta kräver ändringar i programkoden.
Du kan skicka frågor om migrering på Stack Overflow- och tagga dem med "acs-google". Vi svarar så snabbt som möjligt.
Mer information om Googles planer finns i deras OpenID 2.0 Migration Guide.
Checklista för migrering
Följande tabell innehåller en checklista som sammanfattar de steg som krävs för att migrera ditt ACS-namnområde för att använda Googles OpenID Connect-implementering:
Steg | Beskrivning | Måste slutföras av |
---|---|---|
1 |
Skapa ett Google+-program på Google Developers Console. |
1 juni 2015 |
2 |
Om du har regeln "genomströmning av alla anspråk" för Google som identitetsprovider i en regelgrupp som är associerad med ditt program testar du programmet för att säkerställa att det är migreringsklart. annars är det här steget valfritt. |
1 juni 2015 |
3 |
Använd ACS-hanteringsportalen för att växla ditt ACS-namnområde för att använda Googles OpenID Connect-implementering genom att förse den med google+-programmets parametrar (klient-ID och klienthemlighet). Om du stöter på problem med migreringen kan du återställa till OpenID 2.0 fram till den 1 juni 2015. |
1 juni 2015 |
4 |
Migrera användarnas identifierare i serverdelssystemet från de aktuella Google OpenID 2.0-identifierarna till de nya Google OpenID Connect-identifierarna. Detta kräver kodändringar. |
den 1 januari 2017 |
Genomgång av migrering
Utför följande steg för att migrera ditt ACS-namnområde för att använda Googles OpenID Connect-implementering:
Skapa ett Google+-program
Detaljerade anvisningar om hur du gör detta finns i avsnittet Så här skapar du ett Google+-program.
Kontrollera att programmet är migreringsklart
Om du har regeln "genomströmning av alla anspråk" för Google som identitetsprovider i en regelgrupp som är associerad med ditt program följer du anvisningarna i avsnittet Så här: Se till att ett ACS-program är migreringsberedskap för att testa ditt program för migreringsberedskap. Detta beror på att vid migrering blir en ny anspråkstyp (Ämne) tillgänglig för ACS från Google.
Not
En regel för "genomströmning av alla anspråk" är en regel där indataanspråkstyp och indataanspråksvärde anges till Alla och anspråkstyp för utdata och utdataanspråksvärde anges till Skicka genom den första indataanspråkstypen respektive Skicka genom indataanspråksvärdet. Regeln visas på ACS-hanteringsportalen enligt nedan, med kolumnen Utdataanspråk inställd på Genomströmning.
Om du tidigare har genererat regler eller lagt till regler manuellt för Google som identitetsprovider i en regelgrupp som är associerad med ditt program kan du hoppa över det här steget. Detta beror på att den nya Ämne anspråkstyp inte skickas till programmet efter migrering.
Mer information om de här alternativen finns i Regelgrupper och Regler.
Växla ACS-namnområdet för att använda Googles OpenID Connect-implementering
Gå till Microsoft Azure Management Portal, logga in och klicka på Active Directory. Välj det ACS-namnområde som måste migreras och klicka på Hantera för att starta ACS-hanteringsportalen.
På ACS-hanteringsportalenklickar du på identitetsprovidrar i trädet till vänster eller klickar på länken identitetsprovidrar under avsnittet Komma igång. Klicka på Google.
dialogrutan
På sidan Redigera Google Identity Provider kontrollerar du Använd OpenID Connect.
I fälten Klient-ID och Klienthemlighet (nu aktiverat) kopierar du motsvarande värden från ditt Google+-program.
Not
Om du klickar på Sparaanvänder alla begäranden från Googles identitetsprovider från acs-namnområdet automatiskt Googles OpenID Connect-implementering. Om du behöver återställa kan du avmarkera Använd OpenID Connect. Klient-ID och klienthemlighet förblir sparade och kan återanvändas senare.
Klicka på Spara.
Prova att logga in med ett Google-ID för att se till att övergången till att använda OpenID Connect lyckades. Om du har problem med att logga in går du tillbaka till sidan Redigera Google Identity Provider och avmarkerar Använd OpenID Connect för att återställa till OpenID 2.0. När du har återställt kontrollerar du att klient-ID och Hemlighet som du kopierade från Google Developer Console har angetts korrekt för ditt namnområde. Sök till exempel efter stavfel.
Migrera användarnas identifierare i serverdelssystemet från Open ID 2.0 till OpenID Connect
Du måste migrera användarnas identifierare i serverdelssystemet från befintliga Google Open ID 2.0-identifierare till de nya Google OpenID Connect-identifierarna före den 1 januari 2017. Det här steget kräver kodändringar. Mer information finns i Så här migrerar du användarnas befintliga Open ID 2.0-identifierare till nya OpenID Connect-användaridentifierare
Gör så här: Skapa ett Google+-program
Du behöver ett Google-konto för att utföra följande steg. Om du inte har en, kan du få en på https://accounts.google.com/SignUp.
I ett webbläsarfönster navigerar du till Google Developers Console och loggar in med dina autentiseringsuppgifter för Google-kontot.
Klicka på Skapa projectoch ange ett Projektnamn och Project ID. Markera kryssrutan användarvillkor. Klicka sedan på Skapa. Detta registrerar programmet hos Google.
Klicka på API:er & autentisering i det vänstra fönstret. Klicka sedan på autentiseringsuppgifter. Under OAuthklickar du på Skapa nytt klient-ID. Välj Web Application och klicka på Skärmen Konfigurera medgivande. Ange ett produktnamn och klicka på Spara.
Klicka på API:er & autentisering i det vänstra fönstret. Klicka sedan på API:er. Under Bläddra bland API:ersöker du efter Google+ API-. Aktivera Status till ON.
I dialogrutan Skapa klient-ID väljer du webbprogram som programtyp.
I fältet Auktoriserad Javascript Origins anger du den fullständiga domännamns-URL:en (FQDN) för ditt namnområde, inklusive den inledande "HTTPS://" och det avslutande portnumret. till exempel https://contoso.accesscontrol.windows.net:443.
I fältet auktoriserade omdirigerings-URI:er anger du en URI som innehåller den fullständiga domännamns-URL:en (FQDN) för ditt namnområde, inklusive inledande "HTTPS://" och det avslutande portnumret följt av "/v2/openid"; till exempel https://contoso.accesscontrol.windows.net:443/v2/openid.
Klicka på Skapa klient-ID.
Anteckna värdena för klient-ID och klienthemlighet från sidan klient-ID för webbprogram. Du behöver dem för att konfigurera Googles OpenID Connect-implementering på ACS-hanteringsportalen.
Viktig
Klienthemlighet är en viktig säkerhetsautentiseringsuppgift. Håll det hemligt.
Anvisningar: Migrera användarnas befintliga Open ID 2.0-identifierare till nya OpenID Connect-användaridentifierare
När du har migrerat acs-namnområdet för att använda Googles OpenID Connect-implementering har du fram till den 1 januari 2017 (enligt Googles OpenID 2.0 Migration Guide) för att migrera användarnas identifierare i serverdelssystemet från de aktuella OpenID 2.0-identifierarna till de nya OpenID Connect-identifierarna.
Följande tabell visar anspråkstyper som blir tillgängliga för ACS från Google när ACS-namnområdet har migrerats för att använda Googles OpenID Connect-implementering:
Anspråkstyp | URI | Beskrivning | Protokolltillgänglighet |
---|---|---|---|
Namnidentifierare |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
En unik identifierare för användarkontot som tillhandahålls av Google. Det här är (befintlig) OpenID 2.0-identifierare. |
OpenID 2.0, OpenID Connect |
Subjekt |
https://schemas.microsoft.com/identity/claims/subject |
En unik identifierare för användarkontot som tillhandahålls av Google. Det här är (ny) OpenID Connect-identifierare. |
OpenID Connect |
Namn |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/name |
Visningsnamnet för användarkontot, som tillhandahålls av Google. |
OpenID 2.0, OpenID Connect (se anmärkning nedan) |
E-postadress |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
E-postadressen för användarkontot som tillhandahålls av Google |
OpenID 2.0, OpenID Connect |
Identitetsprovider |
https://schemas.microsoft.com/accesscontrolservice/2010/07/claims/IdentityProvider |
Ett anspråk som tillhandahålls av ACS som talar om för den förlitande parten att användaren autentiserade med hjälp av Googles standardidentitetsprovider. Värdet för det här anspråket visas i ACS-hanteringsportalen via fältet Sfär på sidan Redigera identitetsprovider. |
OpenID 2.0, OpenID Connect |
Not
För en Google-användare som inte har en (registrerad) Google+-profil är värdet för Namn anspråkstyp samma som värdet för e-postadress anspråkstyp i OpenID Connect.
Anspråkstyperna Name Identifier och Subject kan användas för att spåra och växla befintliga användares unika identifierare i serverdelen genom att mappa (gamla) OpenID 2.0-identifierare till (nya) OpenID Connect-identifierare.
Om du har regeln "genomströmning av alla anspråk" för Google som identitetsprovider i en regelgrupp som är associerad med ditt program, börjar ditt program automatiskt ta emot Ämne anspråkstyp.
Om du tidigare har genererat regler eller lagt till regler manuellt för Google som identitetsprovider i en regelgrupp som är associerad med ditt program måste du lägga till Ämne anspråkstyp manuellt. Mer information om hur du gör detta finns i regelgrupper och regler.
Om du till exempel tidigare hade genererat regler för Google som identitetsprovider i en regelgrupp och sedan lägger till den nya Ämne anspråkstyp (som visas ovan), visas följande.
Programmet som använder den här regelgruppen får Ämne anspråkstyp, tillsammans med andra anspråkstyper.
Not
Efter den 1 januari 2017, när Google upphör med sitt stöd för mappning av identifierare, fyller ACS både NameIdentifier och Subject anspråkstyper med samma OpenID Connect-användaridentifierare.
Gör så här: Se till att ett ACS-program är migreringsberedskap
Med ett undantag är det möjligt att migrera ditt ACS-namnområde för att använda Googles OpenID Connect-implementering utan att ändra programkoden. Undantagsfallet är om du har regeln "genomströmning av alla anspråk" för Google som identitetsprovider i en regelgrupp som är associerad med ditt program. Detta beror på att en ny anspråkstyp (Ämne) automatiskt skickas till programmet vid migrering.
I det här avsnittet beskrivs den rekommenderade ändrings- och testproceduren som du kan följa för att säkerställa att alla program som påverkas av migreringen är redo att hantera den nya anspråkstypen.
Anta att du äger ett ACS-namnområde med namnet ns-contoso och att ditt program i produktion heter ProdContosoApp. Anta också att det här programmet använder Google som identitetsprovider och har "genomströmning av alla anspråk" regel aktiverad för Google.
Installationen
Kom igång genom att gå till Microsoft Azure Management Portal, logga in och klicka sedan på Active Directory. Välj ACS-namnområdet (ns-contoso) och klicka sedan på Hantera för att starta ACS-hanteringsportalen.
På ACS-hanteringsportalenklickar du på förlitande partprogram i trädet till vänster eller klickar på länken förlitande partprogram under avsnittet Komma igång. Klicka sedan på ditt produktionsprogram (ProdContosoApp).
Anteckna egenskaperna för ProdContosoAppbehöver du dessa senare.
Klicka på standardregelgrupp för ProdContosoApp under regelgrupper för att kontrollera att regeln "genomströmning av alla anspråk" är aktiverad för Google.
Steg 1: Konfigurera en testinstans av ditt program i ditt acs-namnområde för produktion
Konfigurera en testinstans av ditt program, TestContosoApp, på en annan rot-URI; till exempel https://contoso-test.com:7777/. Du måste registrera det som ett förlitande partprogram (förlitande partprogram) i namnområdet ns-contoso.
På ACS-hanteringsportalenklickar du på förlitande partprogram i trädet till vänster eller klickar på länken förlitande partprogram under avsnittet Komma igång. Klicka sedan på Lägg till på sidan förlitande partprogram.
På sidan Lägg till förlitande partprogram gör du följande:
I Namnanger du namnet på testprogrammet. Här är det TestContosoApp.
I Lägeväljer du Ange inställningar manuellt.
I Realmskriver du in testprogrammets URI. Här är det https://contoso-test.com:7777/.
I den här anvisningar kan du lämna fel-URL (valfritt) tom.
Använd samma värden som du använde för ProdContosoAppför tokenformatet, tokenkrypteringsprincipoch tokenlivslängd (sek) och tokensigneringsinställningar .
Kontrollera att du har valt Google som identitetsprovider.
Under Regelgrupperväljer du Skapa ny regelgrupp.
Klicka på Spara längst ned på sidan.
Steg 2: Skapa en regelgrupp som simulerar formatet för den ACS-token som programmet får när namnområdet har migrerats för att använda Googles OpenID Connect-implementering
På ACS-hanteringsportalenklickar du på regelgrupper i trädet till vänster eller klickar på länken Regelgrupp under avsnittet Komma igång. Klicka sedan på Lägg till på sidan regelgrupper.
På sidan Lägg till regelgrupp anger du ett namn för den nya regelgruppen, till exempel ManualGoogleRuleGroup. Klicka på Spara.
På sidan Redigera regelgrupp klickar du på länken Lägg till.
På sidan Lägg till anspråksregel kontrollerar du att du har följande värden på plats och klickar på Spara. Detta genererar en "genomströmning av alla anspråk" regel för Google.
Om avsnitt:
Identity Provider är Google.
Indataanspråkstyp val är Valfritt.
indataanspråksvärdet är Alla.
Sedan avsnitt:
Anspråkstyp för utdata är Skicka genom den första anspråkstypen.
utdataanspråksvärdet är Skicka genom det första indataanspråksvärdet.
regelinformation avsnitt:
- Lämna fältet Description (valfritt) tomt.
På sidan Redigera regelgrupp klickar du på länken Lägg till igen.
På sidan Lägg till anspråksregel kontrollerar du att du har följande värden på plats och klickar på Spara. Detta genererar en "statisk" anspråksregel för Google som simulerar tillägg av en ny anspråkstyp, Ämne, vilket är den nya användarens OpenID Connect-identifierare som Google skickar programmet vid migrering.
Om avsnitt:
Identity Provider är Google.
Indataanspråkstyp val är Valfritt.
indataanspråksvärdet är Alla.
Sedan avsnitt:
Anspråkstyp för utdata är Ange typ. I fältet skriver du https://schemas.microsoft.com/identity/claims/subject.
utdataanspråksvärdet är Ange värde. I fältet skriver du 123456.
regelinformation avsnitt:
- Lämna fältet Description (valfritt) tomt.
Klicka på Spara på sidan Redigera regelgrupp.
Steg 3: Associera den nya regelgruppen med testinstansen av programmet
På ACS-hanteringsportalenklickar du på förlitande partprogram i trädet till vänster eller klickar på länken förlitande partprogram under avsnittet Komma igång. Klicka sedan på TestContosoApp på sidan förlitande partprogram.
På sidan Redigera förlitande part väljer du ManualGoogleRuleGroup i avsnittet Autentiseringsinställningar och klickar på Spara.
Nu innehåller alla Google-inloggningsförfrågningar till dina testprogram den nya anspråkstypen.
Steg 4: Testa för att säkerställa att ditt program kan hantera tillägget av ämnesanspråkstypen
Testa programmet för att se till att det kan hantera förekomsten av den nya anspråkstypen (Ämne) korrekt. Normalt bör ett välskrivet program vara robust för nya anspråkstyper som läggs till i token. Hitta och åtgärda eventuella problem. Du kan också följa avsnittet Så här: Migrera användarnas befintliga Open ID 2.0-identifierare till nya OpenID Connect-användaridentifierare för att mappa användaridentifierare.
Steg 5: Migrera din produktionsmiljö
Återskapa och distribuera ditt produktionsprogram (ProdContosoApp). Migrera namnområdet (ns-contoso) för att använda Googles OpenID Connect-implementering genom att följa stegen i genomgången migrering. Kontrollera att ProdContosoApp fungerar som förväntat.