2014-12-03 5 views
0

보관 용 OAuth 2에는 반송 URL을 설정해야합니다. 동적 반환 URL을 사용하여 OAuth 2 흐름을 구현할 수 있습니까?보관 용 OAuth 2 동적 보관 용 URL

return_url을 동적으로해야하는 배경 : 웹 콘솔을 통해 통합하는 경우에는 흐름이 훌륭하지만 웹 콘솔을 통해 관리되는 제품에 대해서는 일반적으로 사용자가 장치의 개인 IP. 이 IP는 내가 미리 알 수없는 것입니다. 동적 반환 URL이 가능하지 않은 경우

가능한 해결책 :

  1. 나는 --- 브로커가 고정 된 URL입니다 브로커 역할을하는 일종의 클라우드 서비스를 호스팅하고 내가 액세스를 다시 릴레이 코드를 장치에 보냅니다.

  2. OAuth 1을 사용하십시오.이 제한이없는 것으로 보입니다.

+1

불가능합니다. 요청의 return_uri 매개 변수는 등록 된 것과 동일해야합니다. 그렇게하기 위해 state 매개 변수를 사용할 수 있습니다. –

+0

감사합니다. 저는 지금 당장 OAuth1과 함께 가기로했습니다. 그러나 미래에는 중앙 중개인 서비스가 올바른 길입니다. –

답변

2

Florent의 의견은 정확합니다. 모든 OAuth 2 리디렉션 URI는 보안 문제로 사전 등록되어야하므로 현재로서는 불가능합니다. 나는 이것을 피드백으로 전달할 것이다.

위에서 언급 한 것처럼 대신 할 수있는 한 가지 방법은 하나의 정적 리디렉션 URI를 사용하지만 '상태'매개 변수에 필요한 정보를 인코딩하고 앱으로 리디렉션 한 후 필요에 따라 디코딩하는 것입니다. 필요에 따라 그것을 처리 :

https://www.dropbox.com/developers/documentation/http/documentation#oauth2-authorize

또는 리디렉션 사전 등록 URI를 필요로하지 않는 OAuth를 하나를 사용할 수 있습니다. 수정 : OAuth 1은 API v1에만 사용할 수 있으며 현재는 deprecated입니다.