2016-10-12 4 views
1

현재 스크립트 및 CSS 파일 1.6.0을 사용하고 있습니다. 내 Angular 1.5.x 앱에 위젯을 통합했습니다. 나는 그것의 GET 요청으로 OKTA 위젯을 렌더링 할 때 (404)를 수신 문제가 발생되었습니다 위젯을 한 번 렌더링됩니다 내가 로그인 할 수,하지만 것을 의미Okta 위젯 렌더링되지 않음

https://*.oktapreview.com/api/v1/sessions/me

내가 로그 아웃하면 , 브라우저를 새로 고치지 않고도 위젯을 다시 렌더링 할 수는 없습니다.

누구든지이 문제를 찾아서 해결 했습니까?

답변

1

나는 이것이 this Stack Overflow issue과 관련이있을 것이라고 생각합니다. 개인 정보 보호 설정을 확인할 수 있습니까?

위젯이 id_token으로 으로 로그인 한 후 sessionToken을 숨겨진 iframe을 통해 교환하기 때문에이 문제가 발생합니다.이 경우 세션 쿠키도 설정됩니다. 그러나 이는 에 있기 때문에 제 3 자 쿠키로 간주됩니다.

세션 쿠키를 설정하기 위해 Okta로 리디렉션하지 않고 타사 쿠키를 사용하지 않도록 설정 한 경우 브라우저를 사용할 때 좋은 방법이 없습니다. 이번 주에 위젯의 새로운 버전 (1.8.0)을 발표하면이 문제가 해결 될 것입니다 (this commmit 참조). 이 새 버전에서는 authParams.display = 'page'을 전달하면 숨겨진 iframe이 아닌 리디렉션을 통해 /authorize에 대한 호출이 수행됩니다.

+0

나는이가 후속 릴리스에서 해결 될 것입니다 기쁘게 생각합니다. 나는 모든 사용자에게 브라우저에서이 변경을하도록 말하고 싶지 않습니다. 이 릴리스는 언제 출시되어야합니까? –

+0

현재 NPM에서 사용 가능하며 (https://www.npmjs.com/package/@okta/okta-signin-widget), 약 1 주일 안에 프로덕션 CDN으로 출시됩니다 (oktapreview를 거친 후 등). – remanc

+0

좋아, 이제 1.8.0이 CDN을 통해 제공된다는 것을 알았습니다. 어떻게 사용하는지 샘플을 찾을 수 있습니까? –

0

는 이제 1.8.0 여기, Okta의 CDN을 통해 볼 수 있습니다 위에서 설명한 authParams.display = 'page' 설정을 사용하는 방법의 샘플입니다

<script> 
    var config = { 
     baseUrl: 'https://YOUR-OKTA-ORG-HERE.okta.com', 
     clientId: 'YOUR-OKTA-CLIENT-ID-HERE', 
     redirectUri: 'YOUR-REDIRECT-URL-HERE', 
     authParams: { 
     responseType: 'code', 
     display: 'page', 
     scopes: ['openid', 'email', 'profile'], 
     } 
    }; 
    var oktaSignIn = new OktaSignIn(config); 

    oktaSignIn.renderEl({ el: '#app-container' },() => {}); 
    </script> 
+0

그래서 responseType이 ** code **가되어 ** 더 이상 ** id_token **이 아니게 되었습니까? –

+0

나는 위에서 언급 한 것과 같은 코드를 시도했다. 302 경고 메시지가 나타납니다. – Sudhir