P粉9491909722023-08-23 18:29:31
예, 콜백 URL 없이 OAuth2를 사용할 수 있습니다. RFC6749에서는 여러 프로세스를 소개합니다. 암시적 흐름(현재 더 이상 사용되지 않음[1])과 인증 코드 흐름(Authorization Code)에는 리디렉션 URI가 필요합니다. 그러나 리소스 소유자 암호 자격 증명 흐름(또한 더 이상 사용되지 않음[1])은 필요하지 않습니다.
RFC6749 출시 이후 리디렉션 URI가 필요하지 않은 다른 사양도 출시되었습니다.
또한 OpenID Connect를 사용할 때 응답 패턴은 redirect_uri
매개변수에 대한 리디렉션일 필요는 없지만 해당 엔드포인트에 대한 POST 요청일 수 있습니다. 자세한 내용은 OAuth 2.0 양식 POST 응답 패턴 사양을 참조하세요.
어쨌든 위 인증 유형이 귀하의 요구 사항에 맞지 않으면 맞춤 인증 유형을 생성할 수 있습니다.
[1]: OAuth 2.1 사양(초안 07)
P粉7138664252023-08-23 16:15:15
완전히 정확하지는 않습니다. OAuth 프로세스의 핵심은 사용자(귀하를 대신하여 데이터에 액세스하는 클라이언트)가 귀하에게 자신의 데이터에 액세스할 수 있는 권한을 부여해야 한다는 것입니다.
인증 지침을 참조하세요. 사용자를 OAuth 인증 페이지로 보내야 합니다:
으아악이렇게 하면 귀하가 액세스를 요청하는 계정 부분(예: 설문조사 보기, 응답 보기 등)을 알려주는 페이지가 사용자에게 표시됩니다. 사용자가 해당 페이지에서 "승인"을 클릭하여 승인하면 SurveyMonkey는 자동으로 리디렉션 URI로 설정한 페이지로 이동하고(위 URL의 리디렉션 URI가 애플리케이션 설정에 설정된 것과 일치하는지 확인) 다시 인증 코드로 돌아갑니다.
따라서 리디렉션 URL이 https://example.com/surveymonkey/oauth
인 경우 SurveyMonkey는 인증 코드를 사용하여 사용자를 해당 URL로 리디렉션합니다.
https://example.com/surveymonkey/oauth?code=<auth_code>
그런 다음 해당 인증 코드를 사용하여 https://api.surveymonkey.net/oauth/token?api_key=<your_api_key>
에 POST 요청을 보내고 다음 POST 매개변수를 제공하여 액세스 토큰을 교환해야 합니다.
이렇게 하면 사용자 계정의 데이터에 액세스하는 데 사용할 수 있는 액세스 토큰이 반환됩니다. 사용자에게 액세스 토큰을 제공할 필요는 없으며 사용자 계정에 액세스하는 데 사용됩니다. 폴링이나 기타 작업이 필요하지 않습니다.
자신의 계정에만 접속하는 경우, 애플리케이션 설정 페이지에서 제공되는 접속 토큰을 사용할 수 있습니다. 그렇지 않으면 자체 리디렉션 서버를 설정하지 않는 한 사용자에 대한 액세스 토큰을 얻을 수 있는 방법이 없습니다(모든 사용자가 동일한 그룹에 속하지 않는 한, 즉 동일한 계정에 여러 사용자가 속하지 않는 한 이에 대해서는 다루지 않겠습니다). SurveyMonkey는 귀하에게 인증 코드를 보낼 수 있는 장소가 필요합니다. 단지 요청만 할 수는 없습니다.