Agent SDK 비밀과 HMAC 서명
Agent SDK 비밀과 HMAC 서명
에이전트 API 자격증명을 보호하고, SDK 가 어떻게 타임스탬프가 붙은 재생 방지 HMAC생성되는지 이해하세요 -SHA256 서명 요청.
Agent SDK 요청은 파트너와 비밀 API 인증됩니다. 그 비밀은 신뢰할 수 있는 백엔드 서비스 안에 보관하고, SDK 가 가능한 한 서명 필드를 생성하도록 하세요.
두 가지 서명 프로토콜
Agent SDK 서명은 정렬된 요청 필드, 초 단위의 타임스탬프, 그리고 논스를 사용합니다. 직접 Developer API 요청은 다음에 설명된 별도의 프로세스를 사용합니다 요청 서명. 한 페이로드 포맷을 다른 포맷에 재사용하지 마세요.
서명 규칙
Agent SDK 요청에 대해:
sign필드를 제외한다.- 빈 값이 있는 필드를 생략합니다.
- 나머지 필드 이름을 ASCII 순서대로 정렬합니다.
- 밭에 합류하
k=v&k2=v2. - HMAC-SHA256 16진수 서명을 계산한다
apiSecret.
SDK는 보내는 동일한 데이터로부터 이 값을 만들어야 합니다. 서명 생성 후 서명된 필드를 변경하면 검증이 실패합니다.
SDK-관리 필드
비밀 저장
- 백엔드 시크릿 매니저 또는 보호된 런타임 구성에서
apiSecret로드. - 비밀을 프론트엔드 번들, 모바일 앱, 데스크톱 클라이언트, 스크린샷, 지원 티켓에 절대 넣지 마세요.
- 개발, 스테이징, 제작 자격 증명을 분리하세요.
- 필요한 서비스 및 사업자에 대한 접근을 제한합니다.
- 로그에서 요청 서명, 권한 값, 비밀 정보를 삭제합니다.
- 노출이 의심되면 자격 증명을 취소하고 교체합니다.
시계 및 재생 보호
SDK에는 재플레이 위험을 줄이기 위한 timestamp과 nonce이 포함되어 있습니다. 백엔드 클럭을 동기화하고 수동으로 만든 nonce를 재사용하지 마세요. 서명 검증이 실패하면, 재시도하기 전에 설정된 비밀, 서버 시간, 직렬화된 필드, 환경을 확인하세요.