• 카테고리

    질문 & 답변
  • 세부 분야

    보안

  • 해결 여부

    해결됨

Friends 로그인 시도 시 오류 발생

22.03.31 13:33 작성 조회수 182

1

안녕하세요. 기능 테스트 강의를 보며 Friends 로그인 시도 시 동의화면 이후에 다음과 같은 오류가 발생하며 정상적으로 리다이렉션되지 않습니다.

Notice: Undefined index: access_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\wgw_website\oauth\callback.php on line 11

Notice: Undefined index: refresh_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\wgw_website\oauth\callback.php on line 12

Notice: Undefined index: refresh_token in C:\Bitnami\wampstack-7.3.29-0\apache2\htdocs\friends_oauth\oauth\token.php on line 36
{"token_type": "Bearer", "access_token": "토큰값", "refresh_token": "토큰값"}

 

액세스토큰과 리프레스 토큰이 정상적으로 발급되었으나 리다이렉션될 때 session에 실리지 않는 것 같은데 해결방안 좀 확인 부탁드려요. db 확인해보니 관련 테이블에는 토큰값이 잘 들어갔습니다.

 

답변 4

·

답변을 작성해보세요.

1

르브론님의 프로필

르브론

질문자

2022.04.06

해결되었습니다.

테스트 과정에서  2개의 아이디로 로그인을 시도하여 2개의 oauth_client가 생겼는데 실습환경상 동일한 client id로 생성되어 있어 token.php에서 select 질의를 할 때 동일한 client id의 다른 값을 불러오는 바람에 정상적으로 로그인되지 않았었네요.

oauth 관련 테이블 데이터를 전부 지우고 재시도하니 정상적으로 로그인되네요. 다른 분들도 참고하시라고 메일로 말씀드리지 않고 게시판에 글 남깁니다. 도와주셔서 감사하고 다들 열공하세요~

0

state 값은 이후 실습에서 사용될 예정이라 신경 안쓰셔도 됩니다.ㅎ

혹시 클라이언트(WGW)에서는 토큰이 저장되었나요?

그리고 이후 질답을 이메일로 주실래요? 그게 편할듯하네요 ㅎㅎ

crehacktive3@naver.com 

입니다.

0

르브론님의 프로필

르브론

질문자

2022.04.04

안녕하세요.

웹 프록시 도구로 확인한 결과,

authorize.php로 client_id와 redirect uri, type, scope는 정상적으로 전달이되고 있으나 state는 계속 빈값으로 전달되고 이후 callback.php로 넘어갈때도 state는 계속 빈값으로 넘어갑니다.

- > /oauth/callback.php?code=wWCdhfrl&state=

 

또한 cookie 내에 token이 실리지 않고 session id만 넘어가고 있습니다.

헤더에도 Bearer 항목으로 추가되지 않습니다.

 

데이터베이스에는 위 url 코드에 따라 토큰은 정상적으로 발급되어 저장되어 있습니다. 

 

state값은 따로 설정하거나 확인하는 코드는 발견하지 못했는데 PHP 슈퍼전역변수인건가요?

 

혹시 몰라서 브라우저 크롬, 파이어폭스, 엣지 모두 확인하였으나 동일한 증상이 반복됩니다.

 

확인 부탁드려요~

 

0

안녕하세요.

문제 파악을 위해서 단계별로 확인을 해봐야 할 것 같은데,

우선 웹 프록시 도구로 인가 코드 발급과 리소스소유자에서 클라이언트로 인가코드가 전달이 되는지,

그리고 클라이언트가 인가 서버로 인가코드를 통해 토큰 발급이 정상되었는지 확인을 위해 클라이언트 측의 데이터베이스에 토큰이 정상적으로 존재하는지 등 단계별 확인이 필요할 것 같습니다.

우선 이렇게 확인해보실래요?