Slack 자격 증명
n8n v2.34요약
이 자격 증명을 사용하여 다음 노드를 인증할 수 있습니다. 이 서비스에 대한 자세한 내용은 Slack의 API 문서를 참고하세요. 이 자격 증명을 구성하려면 Slack 계정과 다음이 필요합니다. 액세스 토큰을 생성하려면 Slack 앱을 만드세요.
이 자격 증명을 사용하여 다음 노드를 인증할 수 있습니다.
지원되는 인증 방법#
- API 액세스 토큰:
- Slack Trigger 노드에 필수입니다.
- Slack 노드에서도 작동하지만 권장하지 않습니다.
- OAuth2:
- Slack 노드에 권장하는 방식입니다.
- Slack Trigger 노드에서는 작동하지 않습니다.
관련 자료#
이 서비스에 대한 자세한 내용은 Slack의 API 문서를 참고하세요.
API 액세스 토큰 사용#
이 자격 증명을 구성하려면 Slack 계정과 다음이 필요합니다.
- Access Token
액세스 토큰을 생성하려면 Slack 앱을 만드세요. n8n은 매니페스트를 사용해 앱을 생성할 것을 권장하며, 이렇게 하면 한 번에 모든 스코프를 구성할 수 있습니다.
매니페스트 사용
- Slack API Apps 페이지를 엽니다.
- Create New App > From a manifest를 선택합니다.
- 앱을 개발할 Workspace를 선택한 다음 Next를 선택합니다.
- JSON 탭을 선택하고 기본 매니페스트를 아래 JSON으로 교체합니다. 필요한 경우 스코프를 조정하세요.
- Next를 선택합니다.
- 요약 내용을 검토하고 Create를 선택합니다. 앱 세부 정보가 열립니다.
{
"display_information": {
"name": "n8n integration"
},
"features": {
"bot_user": {
"display_name": "n8n integration"
}
},
"oauth_config": {
"scopes": {
"bot": [
"channels:read",
"channels:history",
"chat:write",
"files:read",
"files:write",
"groups:read",
"groups:history",
"im:read",
"im:history",
"mpim:read",
"mpim:history",
"reactions:read",
"reactions:write",
"usergroups:read",
"usergroups:write",
"users.profile:read",
"users:read"
]
}
},
"settings": {
"org_deploy_enabled": false,
"socket_mode_enabled": false,
"token_rotation_enabled": false
}
}
처음부터 만들기
- Slack API Apps 페이지를 엽니다.
- Create New App > From scratch를 선택합니다.
- App Name을 입력합니다.
- 앱을 개발할 Workspace를 선택합니다.
- Create App을 선택합니다. 앱 세부 정보가 열립니다.
- 왼쪽 메뉴의 Features 아래에서 OAuth & Permissions을 선택합니다.
- Scopes 섹션에서 앱에 적절한 스코프를 선택합니다. 권장 스코프 목록은 Scopes를 참고하세요.
그런 다음 앱을 설치하고 토큰을 복사합니다.
- 왼쪽 메뉴의 Features 아래에서 OAuth & Permissions을 선택합니다.
- OAuth Tokens 섹션에서 Install to Workspace를 선택합니다. 이 작업을 완료하려면 Slack 워크스페이스 관리자여야 합니다.
- Allow을 선택합니다.
- Bot User OAuth Token을 복사하여 n8n 자격 증명의 Access Token에 입력합니다.
- Slack Trigger에 이 자격 증명을 사용하는 경우, Slack Trigger configuration의 단계를 따라 앱 설정을 마무리하세요.
자세한 내용은 Slack API Quickstart를 참고하세요.
Slack Trigger 구성#
Slack Trigger 노드와 함께 Slack 앱을 사용하려면 다음과 같이 하세요.
-
Slack에서 Your Apps로 이동하여 사용할 앱을 선택합니다.
-
Features > Event Subscriptions로 이동합니다.
-
Enable Events 컨트롤을 켭니다.
-
n8n에서 Webhook URL을 복사하여 Slack 앱의 Request URL에 입력합니다.
Request URL
Slack은 앱당 하나의 요청 URL만 허용합니다. 워크플로를 테스트하려면 다음 중 하나를 수행해야 합니다.
- 먼저 Test URL로 테스트한 다음, 모든 것이 정상 작동하는지 확인한 후 Slack 앱이 Production URL을 사용하도록 변경합니다
- 실행 로깅과 함께 Production URL을 사용합니다.
-
확인이 완료되면 구독할 봇 이벤트를 선택합니다. n8n의 Trigger on 필드를 사용하여 이러한 요청을 필터링합니다.
- 목록에 없는 이벤트를 사용하려면 이를 봇 이벤트로 추가하고 n8n 노드에서 Any Event를 선택합니다.
자세한 내용은 Quickstart | Configuring the app for event listening을 참고하세요.
Slack이 Request URL을 확인한 후에는, 앱의 매니페스트에서도 이벤트 구독을 관리할 수 있습니다. Settings > App Manifest로 이동하여 settings.event_subscriptions 블록을 편집하세요.
n8n은 보안 강화를 위해 Slack Trigger에 요청 서명 검증을 활성화할 것을 권장합니다.
- Slack에서 Your Apps로 이동하여 사용할 앱을 선택합니다.
- Settings > Basic Information으로 이동합니다.
- Signing Secret의 값을 복사합니다.
- n8n에서 이 값을 자격 증명의 Signature Secret 필드에 붙여넣습니다.
Signature Secret 필드는 Slack의 승인(Approvals) 기능에도 필요합니다.
OAuth2 사용#
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
n8n을 셀프 호스팅하고 있고 OAuth2를 처음부터 구성해야 하는 경우, Slack 계정과 다음이 필요합니다.
- Client ID
- Client Secret
둘 다 얻으려면 Slack 앱을 만드세요. n8n은 매니페스트를 사용해 앱을 생성할 것을 권장하며, 이렇게 하면 스코프와 리디렉션 URL을 한 번에 구성할 수 있습니다.
매니페스트 사용
- n8n에서 Slack 자격 증명의 OAuth Callback URL을 복사합니다.
- Slack API Apps 페이지를 엽니다.
- Create New App > From a manifest를 선택합니다.
- 앱을 개발할 Workspace를 선택한 다음 Next를 선택합니다.
- JSON 탭을 선택하고 기본 매니페스트를 아래 JSON으로 교체합니다.
<your-oauth-callback-url>을 n8n에서 복사한 URL로 바꾸고, 필요한 경우 스코프를 조정하세요. - Next를 선택합니다.
- 요약 내용을 검토하고 Create를 선택합니다. 앱 세부 정보가 열립니다.
{
"display_information": {
"name": "n8n integration"
},
"features": {
"bot_user": {
"display_name": "n8n integration"
}
},
"oauth_config": {
"redirect_urls": [
"<your-oauth-callback-url>"
],
"scopes": {
"bot": [
"channels:read",
"channels:history",
"chat:write",
"files:read",
"files:write",
"groups:read",
"groups:history",
"im:read",
"im:history",
"mpim:read",
"mpim:history",
"reactions:read",
"reactions:write",
"usergroups:read",
"usergroups:write",
"users.profile:read",
"users:read"
],
"user": [
"channels:write",
"search:read",
"stars:read",
"stars:write",
"users.profile:write"
]
}
},
"settings": {
"org_deploy_enabled": false,
"socket_mode_enabled": false,
"token_rotation_enabled": false
}
}
사용자 스코프만 포함하는 매니페스트
Slack의 MCP 엔드포인트를 포함한 일부 Slack API 엔드포인트는 봇 토큰이 아닌 사용자 토큰에서만 작동합니다. 사용자 토큰이 필요하다면 대신 이 매니페스트를 사용하세요. 모든 스코프를 사용자 스코프로 요청합니다.
{
"display_information": {
"name": "n8n integration"
},
"oauth_config": {
"redirect_urls": [
"<your-oauth-callback-url>"
],
"scopes": {
"user": [
"channels:read",
"channels:write",
"channels:history",
"chat:write",
"files:read",
"files:write",
"groups:read",
"groups:history",
"im:read",
"im:history",
"mpim:read",
"mpim:history",
"reactions:read",
"reactions:write",
"stars:read",
"stars:write",
"usergroups:read",
"usergroups:write",
"users.profile:read",
"users.profile:write",
"users:read",
"search:read"
]
}
},
"settings": {
"org_deploy_enabled": false,
"socket_mode_enabled": false,
"token_rotation_enabled": false
}
}
처음부터 만들기
- Slack API Apps 페이지를 엽니다.
- Create New App > From scratch를 선택합니다.
- App Name을 입력합니다.
- 앱을 개발할 Workspace를 선택합니다.
- Create App을 선택합니다. 앱 세부 정보가 열립니다.
- 왼쪽 메뉴의 Features 아래에서 OAuth & Permissions을 선택합니다.
- Redirect URLs 섹션에서 Add New Redirect URL을 선택합니다.
- n8n에서 OAuth Callback URL을 복사하여 Slack의 새 Redirect URL로 입력합니다.
- Add를 선택합니다.
- Save URLs를 선택합니다.
- Scopes 섹션에서 앱에 적절한 스코프를 선택합니다. 스코프 목록은 Scopes를 참고하세요.
그런 다음 앱을 n8n에 연결합니다.
- Settings > Basic Information에서 App Credentials 섹션을 엽니다.
- Client ID와 Client Secret을 복사합니다. 이 값을 n8n의 해당 필드에 붙여넣습니다.
- 왼쪽 메뉴의 Features 아래에서 OAuth & Permissions을 선택합니다.
- OAuth Tokens 섹션에서 Install to Workspace를 선택합니다. 이 작업을 완료하려면 Slack 워크스페이스 관리자여야 합니다.
- Allow을 선택합니다.
- 이제 n8n 자격 증명에서 OAuth 버튼을 선택하여 연결할 수 있습니다.
자세한 내용은 Slack API Quickstart를 참고하세요. OAuth 흐름 자체에 대한 자세한 내용은 Slack의 Installing with OAuth 문서를 참고하세요.
스코프#
스코프는 앱이 가지는 권한을 결정합니다.
- 앱을 인증하는 사용자를 대신하여 작동하도록 하려면 User Token Scopes 섹션에 필요한 스코프를 추가하세요.
- 봇을 구축하는 경우, Bot Token Scopes 섹션에 필요한 스코프를 추가하세요.
다음은 OAuth 자격 증명이 요구하는 스코프 목록으로, 좋은 시작점이 됩니다. 위의 앱 매니페스트에는 이미 이 스코프들이 포함되어 있습니다.
| Scope name | Notes |
|---|---|
channels:read |
|
channels:write |
봇 토큰 스코프로는 사용할 수 없음 |
channels:history |
|
chat:write |
|
files:read |
|
files:write |
|
groups:read |
|
groups:history |
|
im:read |
|
im:history |
|
mpim:read |
|
mpim:history |
|
reactions:read |
|
reactions:write |
|
stars:read |
봇 토큰 스코프로는 사용할 수 없음 |
stars:write |
봇 토큰 스코프로는 사용할 수 없음 |
usergroups:read |
|
usergroups:write |
|
users.profile:read |
|
users.profile:write |
봇 토큰 스코프로는 사용할 수 없음 |
users:read |
|
search:read |
봇 토큰 스코프로는 사용할 수 없음 |
자주 발생하는 문제#
토큰 만료#
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.