JWT를 액세스 토큰으로 교환
마지막 업데이트: 2025년 3월 24일
- 적용 대상:
- Experience Manager as a Cloud Service
작성 대상:
- 초급
- 중간
- 개발자
이전 단계에서 만든 JWT는 액세스 토큰용 Adobe IMS API와 교환되며, AEM as a Cloud Service에 액세스하는 데 사용할 수 있습니다. 액세스 토큰을 요청하려면 JWT, client_id, client_secret이 포함된 POST 요청을 IMS 인증 서비스로 전송합니다.
다음 코드는 액세스 토큰에 대한 교환 JWT를 생성하는 데 사용되었습니다
public String getAccessToken() {
String jwtToken = getJWTToken();
GetServiceCredentials getCredentials = new GetServiceCredentials();
System.out.println("Getting Access Token");
try {
HttpClient httpClient = HttpClientBuilder.create().build();
HttpHost authServer = new HttpHost(getCredentials.getIMS_ENDPOINT(), 443, "https");
HttpPost authPostRequest = new HttpPost("/ims/exchange/jwt");
List < NameValuePair > nameValuePairs = new ArrayList < NameValuePair > ();
nameValuePairs.add(new BasicNameValuePair("jwt_token", jwtToken));
nameValuePairs.add(new BasicNameValuePair("client_id", getCredentials.getCLIENT_ID()));
nameValuePairs.add(new BasicNameValuePair("client_secret", getCredentials.getCLIENT_SECRET()));
authPostRequest.setEntity(new UrlEncodedFormEntity(nameValuePairs, Consts.UTF_8));
HttpResponse response;
response = httpClient.execute(authServer, authPostRequest);
StatusLine statusLine = response.getStatusLine();
System.out.println("The status code is " + statusLine.getStatusCode());
HttpEntity result = response.getEntity();
String jsonResponseStr = EntityUtils.toString(result);
System.out.println(jsonResponseStr);
JsonReader jsonReader = new JsonReader(new StringReader(jsonResponseStr));
JsonObject jsonObject = JsonParser.parseReader(jsonReader).getAsJsonObject();
System.out.println("Returning access_token " + jsonObject.get("access_token").getAsString());
return jsonObject.get("access_token").getAsString();
} catch (Exception e) {
System.out.print("Error: " + e.getMessage());
}
return "null";
}
Experience Manager
- 개요
- 재생 목록
- AEM as a Cloud Service 소개
- Experience Cloud 통합
- 기반 기술
- Edge Delivery Services
- Cloud Manager
- 로컬 개발 환경 설정
- 개발
- AEM 디버깅
- AEM API
- 콘텐츠 게재
- 캐싱
- AEM 액세스
- 인증
- 고급 네트워킹
- 보안
- AEM Eventing
- 마이그레이션
- 콘텐츠 조각
- Forms
- Forms as a Cloud Service용 개발
- 적응형 양식 만들기
- Headless 양식을 사용한 사용자 정의 제출 서비스
- 주소 블록 구성 요소 만들기
- 클릭 가능한 이미지 구성 요소 만들기
- AEM Forms 및 Analytics
- 국가 드롭다운 구성 요소 만들기
- 버튼 변형 만들기
- 세로 탭 사용
- 출력 및 양식 서비스 사용
- AEM Forms CS의 문서 생성
- Forms Document Services API 사용하기
- 배치 API를 사용한 문서 생성
- Forms CS의 PDF 조작
- Marketo와 통합
- Blob 색인 태그를 사용하여 양식 제출 저장
- 핵심 구성 요소 기반 양식 미리 채우기
- Azure 포털 스토리지
- 양식 작성 저장 및 다시 시작
- 검토 워크플로 만들기
- AEM Forms를 사용한 Acrobat Sign
- Microsoft Power Automate와 통합
- Microsoft Dynamics와 통합
- Salesforce와 통합
- OneDrive 및 SharePoint에 양식 제출 저장
- Asset Compute 확장성
- 여러 단계 튜토리얼
- 전문가 리소스