Webhook 구성
Logto Console 에서 웹훅을 구성하여 애플리케이션에 원활한 통합과 실시간 이벤트 알림을 받을 수 있습니다. 간편한 구성, 향상된 보안, 편리한 상태 모니터링 옵션을 즐기세요.
웹훅 생성
먼저, Logto Agent 에 의해 호출될 웹훅 엔드포인트를 생성하세요. 이 엔드포인트는 서버에 구현되어 HTTP 요청을 수신할 수 있어야 합니다.
Logto Console 에서 새로운 웹훅을 생성하려면 다음 단계를 따르세요:
-
웹훅 생성: Console > Webhooks로 이동하여 "Create webhook" 버튼을 클릭하세요.
-
이름: 웹훅의 이름을 입력하세요. 이는 사용 시나리오를 정의하기 위한 참조용입니다.
-
Endpoint URL:
Endpoint URL
을 입력하세요. 이는 이벤트가 발생할 때 웹훅 POST 요청을 받을 서버의 URL입니다. 보안상의 이유로, URL은 HTTPS를 통해 공개적으로 접근 가능해야 하며 로컬 호스트 URL이 아니어야 합니다.노트:서버는 Logto 웹훅 요청을 수신한 직후 HTTP 200 ("OK") 응답을 반환하여 요청이 수신되었음을 알리도록 해야 합니다.
해당 웹훅 이벤트의 로직 처리가 완료될 때까지 응답을 기다리면 웹훅이 타임아웃될 수 있습니다.
Logto 웹훅에 200 이외의 응답을 반환하지 마세요. 이벤트 처리 중 오류가 발생하면 자체 서버에서 처리하세요.
-
이벤트: 나타나는 모달에서 이 웹훅을 트리거할 이벤트를 선택하세요. 서버 수신을 과부하시키지 않도록 요구 사항을 충족하는 적은 수의 이벤트를 선택하는 것이 좋습니다. 웹훅을 생성한 후 언제든지 선택한 이벤트를 변경할 수 있습니다.
-
비활성화 / 재활성화: 기본적으로 웹훅은 생성 직후 즉시 활성화됩니다. 웹훅을 일시적으로 중단하려면 생성 후 헤더의 오른쪽 상단에 있는 "Three-Dots" 메뉴를 사용하여 비활성화하거나 재활성화할 수 있습니다.
웹훅 보안
서버가 웹훅 요청을 수신할 준비가 되면, 요청을 안전하게 처리할 수 있는지 확인하고 싶을 것입니다. Logto는 각 웹훅 요청 페이로드에 대한 서명을 생성하여 요청이 Logto에서 온 것임을 확인할 수 있습니다.
새로운 웹훅을 생성한 후 보안을 강화할 수 있는 옵션이 있습니다:
- 서명 키: Logto는 각 웹훅에 대해 서명 키로 알려진 고유한 해시 서명을 생성합니다. 이 키를 엔드포인트 구현의 요청 헤더에 포함할 수 있습니다. 서명 키를 확인하면 웹훅 페이로드가 Logto에서 유래했으며 승인되지 않은 소스에 의해 변조되지 않았음을 보장할 수 있습니다. 코드에 대해 더 알고 싶다면 웹훅 보안을 읽어보세요.
- 사용자 정의 헤더: 웹훅 페이로드에 추가적인 컨텍스트나 메타데이터를 제공하기 위해 사용자 정의 헤더를 포함할 수 있는 옵션이 있습니다. 이 기능을 통해 웹훅 데이터를 효과적으로 처리하는 데 도움이 되는 관련 정보를 추가할 수 있습니다.
서명 키를 활용하고 사용자 정의 헤더의 포함을 고려함으로써 웹훅의 보안을 강화하고 수신된 페이로드의 무결성과 진정성을 보장할 수 있습니다.
웹훅 테스트
Logto와 서비스 간의 연결을 테스트하려면 "Send test payload" 버튼을 클릭하세요. Logto는 선택한 각 이벤트에 대한 샘플 페이로드를 엔드포인트 URL로 전송합니다. 이러한 테스트 요청은 익명 데이터를 포함하며 최근 요청 기록에 기록되지 않습니다.
이 테스트는 웹훅이 Logto로부터 페이로드를 수신하고 처리할 수 있도록 적절히 설정되었는지 확인합니다. 라이브 환경에서 웹훅을 배포하기 전에 통합을 검증할 수 있습니다.
웹훅 상태 모니터링
Logto는 웹훅의 상태를 모니터링하고 잠재적인 문제를 자세히 조사할 수 있는 편리한 도구를 제공합니다:
- 상태 Logto의 웹훅 목록은 각 웹훅의 상태를 표시하며, 지난 24시간 동안의 성공률과 총 요청 수를 포함합니다. 이 정보는 웹훅의 성능에 대한 개요를 제공합니다.
- 독립적인 요청 로그 각 웹훅의 "Recent Requests" 섹션에서 지난 24시간 동안의 요청 로그에 접근할 수 있습니다. 각 요청은 개별적으로 기록되어, 각 요청의 세부 사항을 확인하고 잠재적인 오류나 이상을 조사할 수 있습니다.
- 자동 재시도 전송 실패 (웹훅 응답 상태가 500 이상인 경우) 시, Logto는 최대 세 번까지 자동으로 전송을 재시도합니다. 동일한 요청의 여러 번의 재시도가 불필요한 중복을 피하기 위해 단일 로그 항목만 생성합니다.
이러한 모니터링 기능을 활용하여 웹훅의 상태를 효과적으로 추적하고, 요청 로그를 검사하며, 웹훅 통합의 신뢰성과 성능을 보장할 수 있습니다.