Salesforce 자격 증명
n8n v2.29이 자격 증명을 사용하여 다음 노드를 인증할 수 있습니다: 서비스에 대한 자세한 내용은 Salesforce 개발자 문서를 참고하세요. Salesforce External Client Apps Salesforce는 Connected Apps를 폐지하고 External Client Apps로 전환하고 있습니다.
이 자격 증명을 사용하여 다음 노드를 인증할 수 있습니다:
지원되는 인증 방법#
- JWT
- OAuth2
관련 자료#
서비스에 대한 자세한 내용은 Salesforce 개발자 문서를 참고하세요.
Salesforce External Client Apps
Salesforce는 Connected Apps를 폐지하고 External Client Apps로 전환하고 있습니다. 두 방법 모두 n8n에서 작동합니다. 새 통합을 만드는 경우 External Client Apps를 사용하세요. 기존 Connected Apps는 계속 작동합니다.
JWT 사용하기#
이 자격 증명을 구성하려면 Salesforce 계정과 다음 항목이 필요합니다:
- Environment Type(Production 또는 Sandbox)
- Client ID: 외부 클라이언트 앱 또는 연결된 앱을 만들 때 생성됩니다.
- Salesforce Username
- 자체 서명 디지털 인증서용 Private Key
External Client App 만들기(권장)#
설정하려면 먼저 프라이빗 키와 인증서를 만든 다음 외부 클라이언트 앱을 만듭니다:
- n8n에서 연결에 대한 Environment Type을 선택합니다. 환경을 가장 잘 설명하는 옵션을 Production 또는 Sandbox 중에서 선택합니다.
- Salesforce Username을 입력합니다.
- Salesforce에서 조직에 로그인합니다.
- 인증 기관에서 발급한 프라이빗 키와 인증서가 필요합니다. 자체 키/인증서를 사용하거나 OpenSSL을 사용하여 키와 자체 서명 디지털 인증서를 만드세요. 직접 키와 인증서를 만드는 방법에 대한 안내는 Salesforce의 프라이빗 키 및 자체 서명 디지털 인증서 만들기 문서를 참고하세요.
- Salesforce의 Setup에서 Quick Find 상자에
App Manager를 입력한 다음 App Manager를 선택합니다. - App Manager 페이지에서 New External Client App을 선택합니다.
- Name 및 Contact Email address를 포함하여 외부 클라이언트 앱에 필요한 Basic Info를 입력합니다.
- **API (Enable OAuth Settings)**에서 Enable OAuth를 선택합니다.
- Callback URL 상자에 콜백 URL을 추가합니다:
http://localhost:1717/OauthRedirect(셀프 호스팅하는 경우 n8n 인스턴스 URL). - OAuth Scopes 섹션에서 다음 스코프를 선택합니다:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- Flow Enablement 섹션에서 Enable JWT Bearer Flow를 선택합니다.
- Upload Files를 선택하고
server.crt와 같이 디지털 인증서가 포함된 파일을 업로드합니다. - OAuth Policies에서 다음 설정이 선택 해제되어 있는지 확인합니다:
- Require Secret for Web Server Flow
- Require Secret for Refresh Token Flow
- Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows
- Save를 선택한 다음 Continue를 선택합니다.
- Consumer Key를 복사하여 n8n 자격 증명의 Client ID로 추가합니다.
- 프라이빗 키 파일의 내용을 n8n의 Private Key로 입력합니다.
- n8n의 여러 줄 편집기를 사용하세요.
- 표준 PEM 키 형식으로 프라이빗 키를 입력합니다:
-----BEGIN PRIVATE KEY----- KEY DATA GOES HERE -----END PRIVATE KEY-----
자세한 내용은 Salesforce의 External Client App Basics 문서를 참고하세요.
Connected App 만들기(레거시)#
레거시 방법
Salesforce는 Connected Apps를 폐지하고 있습니다. 새 통합에는 대신 External Client Apps를 사용하세요.
설정하려면 먼저 프라이빗 키와 인증서를 만든 다음 연결된 앱을 만듭니다:
- n8n에서 연결에 대한 Environment Type을 선택합니다. 환경을 가장 잘 설명하는 옵션을 Production 또는 Sandbox 중에서 선택합니다.
- Salesforce Username을 입력합니다.
- Salesforce에서 조직에 로그인합니다.
- 인증 기관에서 발급한 프라이빗 키와 인증서가 필요합니다. 자체 키/인증서를 사용하거나 OpenSSL을 사용하여 키와 자체 서명 디지털 인증서를 만드세요. 직접 키와 인증서를 만드는 방법에 대한 안내는 Salesforce의 프라이빗 키 및 자체 서명 디지털 인증서 만들기 문서를 참고하세요.
- Salesforce의 Setup에서 Quick Find 상자에
App Manager를 입력한 다음 App Manager를 선택합니다. - App Manager 페이지에서 New Connected App을 선택합니다.
- Name 및 Contact Email address를 포함하여 연결된 앱에 필요한 Basic Info를 입력합니다. 자세한 내용은 Salesforce의 Configure Basic Connected App Settings 문서를 참고하세요.
- Enable OAuth Settings 상자를 체크합니다.
- Callback URL에
http://localhost:1717/OauthRedirect를 입력합니다. - Use digital signatures 상자를 체크합니다.
- Choose File을 선택하고
server.crt와 같이 디지털 인증서가 포함된 파일을 업로드합니다. - 다음 OAuth scopes를 추가합니다:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- Save를 선택한 다음 Continue를 선택합니다. 방금 만든 앱과 함께 Manage Connected Apps 페이지가 열립니다.
- API (Enable OAuth Settings) 섹션에서 Manage Consumer Details를 선택합니다.
- Consumer Key를 복사하여 n8n 자격 증명의 Client ID로 추가합니다.
- 프라이빗 키 파일의 내용을 n8n의 Private Key로 입력합니다.
- n8n의 여러 줄 편집기를 사용하세요.
- 표준 PEM 키 형식으로 프라이빗 키를 입력합니다:
-----BEGIN PRIVATE KEY----- KEY DATA GOES HERE -----END PRIVATE KEY-----
이는 n8n 쪽에서 필요한 단계입니다. Salesforce는 리프레시 토큰 정책, 세션 정책, OAuth 정책도 설정할 것을 권장합니다:
- Salesforce에서 Back to Manage Connected Apps를 선택합니다.
- Manage를 선택합니다.
- Edit Policies를 선택합니다.
- Refresh Token Policy 필드를 검토합니다. Salesforce는 90일 후 리프레시 토큰을 만료시킬 것을 권장합니다.
- Session Policies 섹션에서 Salesforce는 Timeout Value를 15분으로 설정할 것을 권장합니다.
- OAuth Policies 섹션에서 Permitted Users에 대해 Admin approved users are pre-authorized for permitted users를 선택하고 OK를 선택합니다.
- Save를 선택합니다.
- Manage Profiles를 선택하고 이 연결된 앱을 사용하도록 사전 승인된 프로필을 선택한 다음 Save를 선택합니다.
- Manage Permission Sets를 선택하여 권한 세트를 선택합니다. 필요한 경우 권한 세트를 만듭니다.
자세한 내용은 Salesforce의 Create a Connected App in Your Org 문서를 참고하세요.
OAuth2 사용하기#
이 자격 증명을 구성하려면 Salesforce 계정이 필요합니다.
Environment Type을 선택해야 합니다. Production과 Sandbox 중에서 선택하세요.
External Client App 만들기(권장)#
n8n을 셀프 호스팅하는 경우, 외부 클라이언트 앱을 만들어 OAuth2를 처음부터 구성해야 합니다:
- n8n에서 연결에 대한 Environment Type을 선택합니다. 환경을 가장 잘 설명하는 옵션을 Production 또는 Sandbox 중에서 선택합니다.
- Salesforce Username을 입력합니다.
- Salesforce에서 조직에 로그인합니다.
- Salesforce의 Setup에서 Quick Find 상자에
App Manager를 입력한 다음 App Manager를 선택합니다. - App Manager 페이지에서 New External Client App을 선택합니다.
- Name 및 Contact Email address를 포함하여 외부 클라이언트 앱에 필요한 Basic Info를 입력합니다.
- **API (Enable OAuth Settings)**에서 Enable OAuth를 선택합니다.
- Callback URL 상자에 n8n OAuth 콜백 URL을 추가합니다(예:
https://your-n8n-instance.com/rest/oauth2-credential/callback. n8n Cloud의 경우https://oauth.n8n.cloud/oauth2/callback이 됩니다). - OAuth Scopes 섹션에서 다음 스코프를 선택합니다:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- Flow Enablement 섹션에서 Enable Authorization Code and Credentials Flow를 선택합니다.
- OAuth Policies에서 다음 설정이 선택되어 있는지 확인합니다:
- Require Secret for Web Server Flow
- Require Secret for Refresh Token Flow
- Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows
- Save를 선택한 다음 Continue를 선택합니다.
- Consumer Key를 복사하여 n8n 자격 증명의 Client ID로 추가합니다.
- Consumer Secret을 복사하여 n8n 자격 증명의 Client Secret으로 추가합니다.
자세한 내용은 Salesforce의 External Client App Basics 문서를 참고하세요.
Connected App 만들기(레거시)#
레거시 방법
Salesforce는 Connected Apps를 폐지하고 있습니다. 새 통합에는 대신 External Client Apps를 사용하세요.
n8n을 셀프 호스팅하는 경우, 연결된 앱을 만들어 OAuth2를 구성할 수도 있습니다:
- n8n에서 연결에 대한 Environment Type을 선택합니다. 환경을 가장 잘 설명하는 옵션을 Production 또는 Sandbox 중에서 선택합니다.
- Salesforce Username을 입력합니다.
- Salesforce에서 조직에 로그인합니다.
- Salesforce의 Setup에서 Quick Find 상자에
App Manager를 입력한 다음 App Manager를 선택합니다. - App Manager 페이지에서 New Connected App을 선택합니다.
- Name 및 Contact Email address를 포함하여 연결된 앱에 필요한 Basic Info를 입력합니다. 자세한 내용은 Salesforce의 Configure Basic Connected App Settings 문서를 참고하세요.
- Enable OAuth Settings 상자를 체크합니다.
- Callback URL에
http://localhost:1717/OauthRedirect를 입력합니다. - 다음 OAuth scopes를 추가합니다:
- Full access (full)
- Perform requests at any time (refresh_token, offline_access)
- 다음 설정이 선택 해제되어 있는지 확인합니다:
- Require Proof Key for Code Exchange (PKCE) Extension for Supported Authorization Flows
- Require Secret for Web Server Flow
- Require Secret for Refresh Token Flow
- Save를 선택한 다음 Continue를 선택합니다. 방금 만든 앱과 함께 Manage Connected Apps 페이지가 열립니다.
- API (Enable OAuth Settings) 섹션에서 Manage Consumer Details를 선택합니다.
- Consumer Key를 복사하여 n8n 자격 증명의 Client ID로 추가합니다.
- Consumer Secret을 복사하여 n8n 자격 증명의 Client Secret으로 추가합니다.
이는 n8n 쪽에서 필요한 단계입니다. Salesforce는 리프레시 토큰 정책과 세션 정책도 설정할 것을 권장합니다:
- Salesforce에서 Back to Manage Connected Apps를 선택합니다.
- Manage를 선택합니다.
- Edit Policies를 선택합니다.
- Refresh Token Policy 필드를 검토합니다. Salesforce는 90일 후 리프레시 토큰을 만료시킬 것을 권장합니다.
- Session Policies 섹션에서 Salesforce는 Timeout Value를 15분으로 설정할 것을 권장합니다.
자세한 내용은 Salesforce의 Create a Connected App in Your Org 문서를 참고하세요.
일반적인 문제#
n8n Cloud에서 Salesforce로 인증할 때 발생하는 연결 문제#
n8n Cloud에서 Salesforce로 인증할 때 연결 문제가 발생하면 Salesforce 사용자 프로필에서 특정 시스템 권한을 활성화해야 할 수 있습니다:
- Salesforce에서 Setup으로 이동합니다.
- Quick Find 상자에서
Profiles를 검색합니다. - n8n에 연결하는 사용자가 사용하는 프로필을 선택합니다(예: System Administrator 또는 해당 프로필).
- Edit를 클릭하거나 새로운 Profile 인터페이스를 사용할 수 있는 경우 이를 사용합니다.
- Administrative Permissions 섹션을 찾습니다.
- Approve Connected Apps for Non-Admins 체크박스를 활성화합니다. Salesforce 언어 또는 번역에 따라 이 체크박스가 Approve apps connected not installed로 표시될 수도 있습니다.
- Save를 클릭합니다.
이 권한은 관리자 프로필이라도 기본적으로 활성화되어 있지 않으며 수동으로 활성화해야 합니다. 이 권한이 없으면 n8n을 Salesforce에 연결하려고 할 때 인증 실패가 발생할 수 있습니다.