Refresh Token 사용하기

리프레시 토큰 흐름은 API 요청을 인증하는 더 안전한 방법입니다. 하나의 장기 유효 자격 증명을 직접 사용하는 대신, 리프레시 토큰을 짧은 수명의 액세스 토큰으로 교환합니다. 해당 액세스 토큰이 만료되면 다시 교환합니다.

이 흐름을 사용하려면 Admin → Developer에서 토큰을 생성할 때 refresh token 옵션을 선택합니다. 생성 시 다음 세 가지 값을 받게 됩니다:

  • Client ID – 통합을 식별합니다

  • Client secret – 교환 요청을 인증합니다

  • Refresh token – 액세스 토큰을 얻는 데 사용됩니다

These credentials are shown once. 세 가지 모두를 복사하여 안전하게 보관하세요. Altium은 이를 저장하지 않으며, 생성 페이지를 벗어난 후에는 다시 표시할 수 없습니다. 리프레시 토큰과 client secret은 비밀번호처럼 취급하세요.

리프레시 토큰을 액세스 토큰으로 교환하기

Altium Identity 토큰 엔드포인트로 POST 요청을 보냅니다.

Token Endpoint

영역

URL

Altium 365

https://auth.altium.com/connect/token

Altium 365 Gov Cloud

https://auth.365-gov.altium.com/connect/token

Request Body (application/x-www-form-urlencoded)

grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}

Response

{
  "access_token": "...",
  "expires_in": 14400,
  "token_type": "Bearer",
  "refresh_token": "...",
  "scope": "..."
}

응답의 access_token를 사용하여 API 요청을 인증합니다. expires_in는 초 단위이며 액세스 토큰이 유효한 기간을 나타냅니다.

curl Example:

curl -X POST https://auth.altium.com/connect/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=refresh_token" \
  --data-urlencode "refresh_token={refresh-token}" \
  --data-urlencode "client_id={client-id}" \
  --data-urlencode "client_secret={client-secret}"

애플리케이션에 통합하기

장시간 실행되는 통합의 일반적인 패턴:

  1. 리프레시 토큰, client ID, client secret을 안전하게 저장합니다(예: 환경 변수 또는 시크릿 관리자).

  2. 시작 시 토큰 엔드포인트를 호출하여 새 액세스 토큰을 가져옵니다.

  3. API 요청에 액세스 토큰을 사용합니다. 만료될 때까지 캐시합니다.

  4. 만료 시(401 Unauthorized), 리프레시 토큰을 다시 교환하여 새 액세스 토큰을 가져옵니다.

리프레시 토큰은 생성 시 구성한 유효 기간(최대 1년)이 지나면 만료됩니다. 리프레시 토큰이 만료되면 Admin → Developer에서 새로 생성해야 합니다.

참고 항목

 

AI-LocalizedAI로 번역됨
만약 문제가 있으시다면, 텍스트/이미지를 선택하신 상태에서 Ctrl + Enter를 누르셔서 저희에게 피드백을 보내주세요.
콘텐츠