리프레시 토큰 사용
새로 고침 토큰 흐름은 API 요청을 승인하는 더 안전한 방법입니다. 수명이 긴 싱글 자격 증명을 직접 사용하는 대신, 새로 고침 토큰을 수명이 짧은 액세스 토큰으로 교환합니다. 해당 액세스 토큰이 만료되면 다시 교환합니다.
새로 고침 토큰만으로는 API 요청을 승인할 수 없으며, 항상 먼저 새로 고침 토큰으로 교환해야 합니다.
이 흐름을 사용하려면 Admin → Developer에서 토큰을 생성할 때 refresh token 옵션을 선택하세요. 생성 시 다음 세 가지 값이 제공됩니다.
-
Client ID – 통합을 식별합니다
-
Client secret – 교환 요청을 인증합니다
-
Refresh token – 액세스 토큰을 얻는 데 사용됩니다
새로 고침 토큰을 액세스 토큰으로 교환하기
Altium Identity 토큰 엔드포인트로 POST 요청을 보내세요.
Token Endpoint
영역 |
URL |
Altium 365 |
|
Altium 365 Gov Cloud |
|
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}"
애플리케이션에 통합하기
장시간 실행되는 통합에서 일반적으로 사용하는 패턴은 다음과 같습니다.
-
새로 고침 토큰, 클라이언트 ID, 클라이언트 시크릿을 안전하게 저장합니다(예: 환경 변수 또는 시크릿 관리 도구).
-
시작 시 토큰 엔드포인트를 호출하여 새 액세스 토큰을 얻습니다.
-
API 요청에 액세스 토큰을 사용합니다. 만료될 때까지 캐시합니다.
-
만료되면(HTTP 상태
401 Unauthorized또는 GraphQL 응답에서 오류 코드AuthExpiredToken이 포함된200 OK), 새로 고침 토큰을 다시 교환하여 새 액세스 토큰을 얻습니다.
새로 고침 토큰은 생성 시 설정한 유효 기간(최대 1년)이 지나면 만료됩니다. 새로 고침 토큰이 만료되면 관리자 → 개발자에서 새 토큰을 생성해야 합니다.
참고 항목