2010-12-04 4 views
4

requiring a link 대신 로그인 페이지가 인라인 또는 iframe으로 표시되도록 Google App Engine을 구성하는 방법이 있습니까?Google App Engine - 인라인/iframe 로그인

나는 그것이 사용자 로그인에 대해 갈 수있는 문서화되지 않은 방법이 될 것 같습니다 그러나

<iframe src="{{ login_url }}"> 
    <!-- no iframes --> 
    <a href="{{login_url}}">Log in</a> 
</iframe> 

처럼 간단하고 싶습니다, 그리고 나는 이것에 대해 갈 수있는 방법입니다 있는지 확실하지 않습니다.

모든 의견에 감사드립니다.

고맙습니다.

브라이언

답변

4

이것은 좋지 않습니다. 도메인에 Google 로그인 양식을 표시하여 사용자가 합법적이라고 어떻게 알 수 있습니까? 사용자를 페이지의 Google 도메인으로 리디렉션하면 혼란이 줄어 듭니다.

또한이 작업을 수행하기 전에 이용 약관을 검토하십시오. 구글이 특별히 어딘가에서 이런 언급을하지 않는다면 나는 놀라지 않을 것이다. 사용자에게 메시지가 표시 될 때마다 Google 로그인 세부 정보를 포기하도록 교육하는 것과 같습니다.

그룹에 여러 게시물이 있습니다. Nick 및 많은 다른 사용자들도이 질문에 responded 비슷한 코멘트를 남겼습니다.

+0

응답 해 주셔서 감사합니다. Google이이 가능성을 문서화하지 않은 이유를 설명하는 데 도움이됩니다. 그러나 GAE가 Google Apps 도메인에서 사용되고있는 경우에는 이러한 우려가 적용되지 않습니다. 'xyz.com'이고 그 도메인의 사용자 계정에 대해서만 로그인이 인증되었습니다 — 또는 그 것인가? –

+0

Google Apps 도메인에 대해 인증하는 경우 사용자가 google.com 주소 (https://www.google.com/a/appsdomain.com/ServiceLogin)의 로그인 페이지로 리디렉션됩니다. Google Apps 자격증 명으로 로그인하라는 메시지를 표시합니다. 그래서 나는 그것이 여전히 유효하다고 생각한다. 또 다른 옵션은 사용자를 자동으로 로그인 URL로 리디렉션하는 것입니다. –

+0

보안 문제는 팝업 로그인 링크를 통해 주어진 유용성 우려에 대해 합리적인 양보라고 생각합니다. –

0

iFrame 내부에 하이퍼 링크가 없다는 것을 제외하고는 여기에서 제안한 것을 시도해 보았습니다. 인증 페이지로 리디렉션하지 않고 내 페이지로 돌아 가기보다는 Google의 인증 페이지를 내 페이지의 iFrame에 표시하려고합니다. 또한 login_url에 쿼리 문자열을 추가하면 내 기본 요청은 내 응용 프로그램의 기본 페이지가 아닌 간단한 "환영"메시지를 반환합니다.

그것은 샌드 박스에서 아름답게 작동하지만 GAE에 배포 할 때는 작동하지 않습니다. Google의 login_url에서 반환 한 페이지는 iFrame에 표시되지 않습니다. 콘솔 메시지는 "X-Frame-Options로 금지 된 디스플레이이기 때문에 문서 표시를 거부했습니다." 가능한 해결 방법에 대해 생각해 봤지만 Google은 분명히 로그인 페이지가 이런 식으로 표시되는 것을 원하지 않습니다. 내 앱이 HttpRequests를 많이 사용하기 때문에 실망합니다. 따라서 메인 페이지가 결코 새로 고침되지는 않지만 여전히 GAE에 만족합니다.

+0

StackOverflow에 오신 것을 환영합니다! 당신은 아주 오래된 질문에 대답하고 있습니다. – Jesse