2014-08-28 37 views
8

Przeprowadzam migrację z Google OpenID 2.0 do OpenID Connect. Obecnie korzystam z usługi Microsofts ACS, która korzysta z Google Go amortyzuje amortyzację OpenID 2.0 w celu uwierzytelnienia. Oznacza to, że moja dziedzina została automatycznie ustawiona na "https://mywebsite.accesscontrol.windows.net:443/v2/openid".Migracja z Google OpenID 2.0 do OpenID Connect z różnymi parametrami redirect_uri i openid.realm

ACS nie planuje aktualizacji, więc rozpocząłem bezpośrednią integrację z Google OpenID Connect. Podążam za Googles migration documentation, co oznacza, że ​​mogę dodać parametr openid.realm (ustawiony jako obszar używany do OpenID 2.0), aby uzyskać identyfikator openid_id potrzebny do mapowania istniejących kont użytkowników. Również mówi, że musi być taki sam jako openid.realm. Chyba ze względów bezpieczeństwa.

Mój problem polega na tym, że nie mogę ustawić przekierowania uri na takie samo, jak w dziedzinie, ponieważ dziedzina jest punktem końcowym ACS, np.

https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=id.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Fmywebsite.com%3A2018%2F&scope=openid%20profile%20email&state=state&openid.realm=https%3A%2F%2Fmywebsite.accesscontrol.windows.net%3A443%2Fv2%2Fopenid 

Próbowałem ustawiając je inaczej, ale pojawia się błąd

„Realm nie zrobił ' redirect_uri mecz t/pochodzenia. Kod błędu: 5 '

Czy Google planuje wspierać takie przypadki?

Jakieś pomysły na obejście tego problemu?

Odpowiedz

0

Stare pytanie, ale w przypadku, gdy nadal liczy, myślę, że Google docs rzeczywiście powiedzieć:

„Znajdź swoją aplikację na redirect_uri i zmienić go (jeśli to konieczne), tak, że pasuje do OpenID 2.0 openid.realm wartość według zasady dopasowywania w section 9.2 of the OpenID 2.0 spec "

to sprowadza się do dopasowania domeny oraz redirect_uri bycie sub-path ścieżki w openid.realm, jeśli taki istnieje.

Ponieważ Twój openid.realm zawiera ścieżkę, myślę, że jesteś trochę spieprzony i będziesz musiał uciekać się do ustawienia przekierowania na serwerze, aby odwzorować stare redirect_url na nową ścieżkę. Na szczęście w moim przypadku mogę ustawić redirect_url na dowolną nową ścieżkę, ponieważ moja openid.realm ma tylko nazwę domeny.