도입
개발 오그에서는 무난하게 이전 포스트의 내용만으로 손쉽게 SSO 설정이 되지만 운영 오그나 다른 환경에서는 알 수 없는 이유로 SSO 설정이 제대로 작동되지 않아 에러 페이지로 이동하는 경우가 있습니다. 오류들은 일반적으로 Expired authorization code, Remote Access Error, Invalid Grant 이런 경우가 많습니다. 이러한 오류가 발생하는 경우 해결하기 위해 좀 더 복잡한 설정을 요구하고 있습니다.
개인적인 경험을 바탕으로 보았을 때 위의 에러들은 아래의 작업들을 통해 해결되었습니다. 아래 작업은 다소 헷갈릴 수 있는 작업이니 천천히 따라해보시고 계속해서 에러가 발생한다면 댓글로 같이 고민하는 시간을 가지고자 합니다.
Single Sign-on (SSO) 설정하기
Org B
Org B로 이동 -> Setup -> App Manager -> New Connected App -> Create a Connected App

이름과 이메일을 입력하신 후 API (Enable OAuth Settings)섹션에서 Enable OAuth Settings 활성화를 시켜줍니다.
그리고 Callback URL에 다음의 주소를 입력합니다.
예시
<<포탈주소>>vforcesite/services/authcallback/loginwithsalesforce
<<포탈주소>>/services/authcallback/loginwithsalesforce
여러분의 Experience Cloud의 사이트 주소가 naver.my.site.com 이라면 아래처럼 구성될겁니다.
https://naver.my.site.com/customersvforcesite/services/authcallback/loginwithsalesforce
https://naver.my.site.com/services/authcallback/loginwithsalesforce
입력후 Selected OAuth Scopes의 다음의 항목들을 선택하여 Selected OAuth Scopes로 추가합니다.
- Access the identity URL service (id, profile, email, address, phone).
- Manage user data via APIs (api).
- Perform requests at any time (refresh_token, offline_access).
- Access unique user identifiers (openid)
그 다음 Save.
Consumer Key & Secret
방금전에 생성한 App을 View를 통해 들어가서 API (Enable OAuth Settings)를 찾습니다.

Manage Consumer Details를 누르면 새로운 탭이 뜨는데 진행하기 위해서 인증 작업을 거쳐야 합니다.
이메일을 통해 인증 후 Consumer Key와 Secret를 볼 수 있는 페이지로 이동되는데 이 값이 Org A 작업에서 필요하니 탭을 끄지 말거나 메모장에 잠시 메모해둡시다.
- Consumer Key: Connected app 생성 시 세일즈포스가 만들어주는 identification이자 public 키 입니다 (client_id 라고도 불림). 외부 웹사이트나 앱이 세일즈포스 API를 이용하여 접근 시 자신을 인증하는데 사용됩니다.
- Consumer Secret: Consumer Key 생성 시 같이 생성되는 시크릿 값이며 인증에 사용된 Consumer Key의 오너라고 증명하는데 사용됩니다 (client_secret라고도 불림).
- 참고: Opkey, Salesforce.
만약에 Consumer Details에 영향을 주는 설정 작업을 하셨다면 Consumer Key와 Secret가 다시 갱신됩니다.
갱신이 되는데 최대 10분 정도 소요가 되고 갱신 이후에는 이전에 사용하던 Consumer Key와 Secret를 사용할 수 없으니 참고부탁드립니다.
Org A
Setup -> Auth. Providers -> New -> Provider Type -> Salesforce


위 Org B에서 얻은 Consumer Key와 Secret를 Consumer Key와 Secret 항목에 넣어줍시다.
https://<<Org B Domain>>.my.salesforce.com/services/oauth2/authorize
https://<<Org B Domain>>.my.salesforce.com/services/oauth2/token
설정 작업은 여기까지 입니다. 저장하신 후 SSO를 적용시킨 Org A의 Experience Cloud 사이트로 이동하여 한번 테스트 해보도록 하겠습니다.
결과 확인
정상적으로 회원가입 및 로그인 되는것을 확인할 수 있습니다.
'Salesforce > 개발_한국어' 카테고리의 다른 글
Experience Cloud 사이트에 Single Sign-on (SSO) 추가하기 (0) | 2025.01.02 |
---|---|
LWC Refresh Related List (2) | 2024.10.11 |
세일즈포스 LWC로 lightning-map 활용한 지도 구현 가이드 (2부) (0) | 2024.08.19 |
세일즈포스 LWC로 lightning-map 활용한 지도 구현 가이드 (1부) (0) | 2024.07.24 |
세일즈포스 Apex Wrapper (0) | 2024.07.22 |