AWS HTTP API(베타)로 권한 부여자(Cognito) 생성

4188 단어 APIGatewaycognitoAWS

소개



REST API로 작성할 수 있는 권한 부여자(Cognito)를, HTTP API(β판)로 작성합니다.
Cognito에서 사용자 풀을 작성했다고 가정합니다.

API Gateway에서 HTTP API (β 버전) 만들기



특별한 설정은 하지 않고 HTTP API(β판)를 작성합니다. 이 장은 건너뛰기 OK입니다.
  • Amazon API Gateway 톱 페이지로 이동합니다.
  • API 만들기 버튼을 누릅니다.

  • HTTP API 베타의 빌드 버튼을 누릅니다.


  • Step1 API 만들기
    API 이름에 적절한 이름을 입력하고 다음 버튼을 누릅니다.


  • Step2 루트 설정
    설정은 변경하지 않고 [다음] 버튼을 누릅니다.

  • Step3 스테이지 정의
    설정은 변경하지 않고 [다음] 버튼을 누릅니다.
    ※초기값의 $default는, 자동으로 배포해 주는, 우수한 설정입니다.

  • Step4 확인하여 작성
    만들기 버튼을 누릅니다.


  • 권한 부여자(Cognito) 만들기



    여기부터가 본제입니다.
  • 작성한 HTTP API의 톱 페이지로 이동합니다.


  • 허가




  • 왼쪽 창에서 개발 > 권한 부여를 선택합니다.
  • 권한 부여자 관리 탭을 엽니다.
  • 만들기 버튼을 누릅니다.

  • JWT 권한 부여자 만들기




  • 이름에 적절한 이름을 입력합니다.
  • [ID 소스]를 설정합니다. ※ 이미지의 예는 "$ request.header.Authorization"
  • 게시자 URL을 입력합니다. 다음과 같은 형식입니다.
    https://cognito-idp.{지역}.amazonaws.com/{풀 ID}
    {리전}: 리전 이름입니다. 도쿄 리전이라면 「ap-northeast-1」입니다.
    {풀 ID}: Cognito로 만든 사용자 풀의 풀 ID입니다. 사용자 풀의 "일반 설정"에서 확인할 수 있습니다.
  • 대상의 Add audience 버튼을 누르고 {App Client ID}를 입력합니다.
    {앱 클라이언트 ID}는 사용자 풀의 '일반 설정 > 앱 클라이언트'에서 확인할 수 있습니다.
    ※ 앱 클라이언트가 작성되지 않은 경우 작성하십시오.
  • 만들기 버튼을 누릅니다.

  • 이제 권한 부여자를 만들 수 있습니다.

    만든 권한 부여자 확인



    작성한 오소라이저의 확인도 실려고 했습니다만, 길어졌으므로 또의 기회에.

    획득한 ID 토큰을 fetch로 요청하면 좋은 느낌으로 결과를 얻을 수 있습니다.
    const jwt = '{IDトークン}';
    const url = 'https://{API-ID}.execute-api.ap-northeast-1.amazonaws.com/';
    const params = {
      method: 'get',
      headers: { 'Authorization': jwt },
    };
    await fetch(url, params);
    

    좋은 웹페이지 즐겨찾기