서버 측 코드에서 수신중인 oAuth 토큰의 유효성을 검사하려고합니다.Exchange oAuth 토큰 유효성 검사
서버 쪽 코드는 Exchange Managed API를 사용하고 있으며 Outlook API에서 Office.context.mailbox.getUserIdentityTokenAsync(callback)
메서드를 사용하여 Exchange의 추가 기능에서 보낸 토큰을 검색했습니다. documentation에 따르면
var token = (AppIdentityToken)AuthToken.Parse(rawToken);
token.Validate(new Uri(hostUri));
:
나는 내가 token.Validate(uri)
메소드를 호출 문제로 실행하고
추가 기능의 페이지 내에서 hostUri를 얻으려면, 내가 사용 :hostUri : 아웃룩의 페이지에 완전한 URI 추가 -getUserIdentityTokenAsync이라고합니다.
var hostUri = location.href.split('?')[0];
그러나이 제공 URI를 사용하여 토큰의 유효성을 검사하는 동안 오류가 발생
토큰을 발행 한 ID 공급자 (예 : Exchange)의 공개 키를 사용하는 대신 추가 기능이있는 URI를 사용하는 이유가 무엇인지 혼란 스럽습니다.
그렇습니다. 토큰 유효성 검사 라이브러리는'amurl' 필드에서 토큰 유효성 검사를위한 공개 키를 얻을 수있는 곳을 찾습니다. 이 경우 우리는 도메인 이름이 구성된 테스트 용 VM에 교환을 설정했기 때문에 도달 할 수 없었습니다. 일단 수정되면 (호스트 파일에 레코드 추가) 공개 키를 얻고 토큰의 유효성을 검사 할 수있었습니다 . –