2010-03-17 4 views
3

우리는 제공자의 API를 사용하고 있습니다. 다음 버전에서는 OpenId 서버를 제공하지만 대부분 사용자가 데스크톱 응용 프로그램을 사용하고 있습니다. 우리가 만들고있는 다른 웹 사이트는이 응용 프로그램에서 열릴 것이며 우리는이 공급자에 저장된 자원에 액세스하기 위해 openid와 연결할 것입니다.데스크톱 응용 프로그램으로 OpenId?

여전히 사용자가 이미 데스크톱으로 인증 된 경우 어떻게 작동하는지 이해할 수 없지만 다른 시간을 인증해야합니까? 브라우저를 닫고 다시 열면 다시해야합니까?

답변

1

나는 대답이 "그것이 달려있다"고 생각합니다. 닫기 및 재개 된 브라우저 질문의 경우 사이트에서 세션 쿠키 또는 영구 쿠키를 사용하여 요청을 인증하는지 여부에 따라 다릅니다.

하지만 데스크톱에서 클라이언트 및 브라우저를 열고 인증하는 경우 자세한 내용은 공급자에게 문의해야합니다. 결과를 얻는 방법을 상상할 수 있습니다.

5

OpenID 및 데스크톱 앱은 전적으로 완전히 호환되지 않습니다. OpenID를 사용하여 데스크톱 앱을 보호 할 수는 없습니다.

OAuth를 살펴보십시오. OpenID를 사용하거나 사용하지 않고도 작동 할 수 있지만 OAuth는 데스크톱 응용 프로그램을 비롯한 모든 응용 프로그램이 네트워크 자원에 액세스하도록 허용하는 것과 관련이 있습니다.

+0

어떤 의미에서 안전하지 않습니까? –

+0

알렉스, 차를 잠그고 집을 지키지 않은 방법을 묻는 것과 같습니다. 자신이 실제로 보호하고있는 것을 자문해야합니다. 데스크톱 응용 프로그램은 OpenID Provider와의 통신을 스푸핑하는 로컬 사용자에게 전적으로 취약합니다 (예를 들어). 다른 사용자와 마찬가지로 가장 할 수 있습니다. 또한 OpenID는 데스크탑 응용 프로그램이 로컬 사용자의 신원을 원격 네트워크 자원에 "증명"하도록 권한을 부여하지 않으므로 로컬 또는 네트워크 자원을 데스크탑 응용 프로그램 용 OpenID로 보호 할 수 없습니다. –

+0

@ Andrew, Google OpenID는 계정 이름 대신 고유 한 GUID를 openID relayer에 반환합니다. 이 guid가 무엇인지 추측 할 방법이 없으므로 사용자를 사칭하는 것은 불가능합니다. 데스크톱 응용 프로그램이 openid 계정 대신 guid를 반환하는 openID 공급자 만 허용하도록 제한하려면 응용 프로그램이 안전합니까? GUID를 비밀 키로 사용하여 로컬 데이터를 암호화하고 싶습니다. –

관련 문제