나는 속임수의 저자이자 관리자입니다.
Rauth는 더 이상 redirect_uri
을 시행하지 않으므로 제공자가 허용하는 경우 Rauth는 사용을 중지 할 수 있습니다. 그러나 궁극적 인 목표는 서버를 설정하지 않는 경우 공급자가 필요로하는 redirect_uri
으로도 가능합니다. 예를 들어, Flask를 사용하여 최소한의 서버를 설치할 수있는 localhost로 리디렉션하거나 공급자가 허용하는 다른 임의의 URL을 리디렉션 할 수 있습니다. Facebook은이 목적으로 https://www.facebook.com/connect/login_success.html을 제공합니다. 그리고 사용하는 제공 업체가 비슷한 구성표를 가지고있을 수도 있습니다. Here's an example은 방탕 한 상태입니다.
또 다른 옵션은 grant_type = password와 함께 Bearer Auth를 사용하는 것입니다. OAuth 2.0 공급자는 모두 이며 무기명 인증을 지원하기 위해을 지원하지만 grant_type 비밀번호를 구현하지 못할 수 있습니다. 이 경우 redirect_uri
이 필요하지 않으며 대신 서버에 사용자 자격 증명을 전달하면 액세스 토큰이 반환됩니다. 귀하의 제공 업체가 grant_type 암호를 사용하여 Bearer Auth를 허용하는 경우 이는 아마도 이상적 일 것입니다. Rauth 0.5.3 시도는 기본적으로 Bearer Auth를 사용하기 때문에 grant_type을 전달하면됩니다. 이 기능을 제공하기 전에 업데이트해야합니다.
여기 간단한 예제 :
# assume you have constructed an OAuth2Service object and bound it to `serv`
params = {'grant_type': 'password',
'username': 'foo',
'password': 'hunter2'}
s = service.get_auth_session(params=params)
r = s.get('https://example.com/api/some/endpoint')
공급자하고 싶은에 따라, 좀 더 조사가 필요할 수 있습니다. 그러나 이것으로 시작하는 것이 좋습니다.
편집
내가 암호 grant_type에 대한 내 의견은 조금 혼란 생각 : 나는 당신에게 의미하는 것 같다 내가 인증에 액세스 토큰을 부착 의미 여기 무기명 승인에 의한 무기명 인증 (함께 사용해야 머리글 형식), 실제로 당신은하지 않습니다. 엔티티 메소드 [1]에서 자격 증명을 전송하는 것이 좋습니다. 당신이 인증이 예상대로 작동하지 않는 rauth을 사용하고 찾을 수있는 경우는 다음과 같이 무기명 인증을 해제해야 할 수 있습니다
[1] "고객이 확인해야 인증 요청 : 사양에서
s = service.get_auth_session('/some/resource',
data={'code': code},
bearer_auth=False)
베어러 HTTP 인증 스키마와 함께 인증 요청 헤더 필드를 사용하는 베어러 토큰이 있어야합니다. 리소스 서버는이 방법을 지원해야합니다. "