ServiceNow 연동
Entry, Professional, Enterprise, Enterprise Advanced 플랜에서 사용할 수 있습니다.
IT 서비스 관리(ITSM)와 팀 커뮤니케이션 사이의 간극을 메워 방해 요소와 컨텍스트 전환을 줄이세요. Mattermost를 벗어나지 않고도 인시던트 보고서, 변경 요청, 서비스 티켓을 생성하고 관리할 수 있으며, ServiceNow 레코드 변경에 대한 이벤트 기반 알림 구독을 실시간으로 관리하고 반복 작업을 자동화해 대응 시간을 단축할 수 있습니다.
배포
설정은 ServiceNow에서 시작해 Mattermost에서 마무리합니다.
ServiceNow에서 OAuth 앱 만들기
- ServiceNow 인스턴스로 이동한 뒤 All > System OAuth > Application Registry(전체 > 시스템 OAuth > 애플리케이션 레지스트리)로 이동합니다.
- 오른쪽 위에서 New를 선택한 다음 Create an OAuth API endpoint for external clients(외부 클라이언트용 OAuth API 엔드포인트 생성)를 선택합니다.
- 앱 이름을 입력하고 리디렉션 URL을
https://<YOUR-MATTERMOST-URL>/plugins/mattermost-plugin-servicenow/api/v1/oauth2/complete로 설정합니다. 이때YOUR-MATTERMOST-URL은 ServiceNow 이벤트를 게시할 Mattermost URL로 바꾸고, 소문자를 사용합니다.
클라이언트 시크릿은 자동으로 생성됩니다. 시크릿과 Client ID를 복사해 두세요. Mattermost 설정에서 이 값들이 필요합니다.
ServiceNow에 업데이트 세트 업로드하기
구독, 레코드 변경, Mattermost로의 변경 알림 전송을 지원하도록 ServiceNow 인스턴스를 변경하는 작업은 Mattermost 및 ServiceNow 시스템 관리자가 업데이트 세트(update set)를 사용해 수행합니다. 업데이트 세트가 생성되면 Mattermost에서 내려받아 ServiceNow에 업로드할 수 있습니다.
- Mattermost 시스템 콘솔에서 업데이트 세트 XML 파일을 내려받습니다.
- ServiceNow 인스턴스에서 All > System Update Sets > Retrieved Update Sets(전체 > 시스템 업데이트 세트 > 가져온 업데이트 세트)로 이동합니다.
- 페이지 하단의 Import Update Set from XML(XML에서 업데이트 세트 가져오기) 링크를 선택합니다.
- 내려받은 XML 업데이트 세트 파일을 선택해 업로드합니다. ServiceNow for Mattermost Notifications라는 이름의 업데이트 세트가 표시됩니다.
- 해당 업데이트 세트를 선택한 다음 Preview Update Set(업데이트 세트 미리보기)을 선택합니다.
- Commit Update Set(업데이트 세트 커밋)을 선택합니다.
- 데이터 손실 알림을 확인하고 Proceed with Commit(커밋 진행)을 선택합니다. 업데이트 세트가 ServiceNow에 업로드되고 커밋됩니다.
ServiceNow에서 사용자 권한 설정하기
업데이트 세트를 업로드하면 x_830655_mm_std.user라는 새 역할이 생성됩니다. ServiceNow 사용자가 Mattermost 구독을 추가하거나 관리하려면 이 역할이 있어야 합니다. Mattermost를 통해 구독을 추가·관리할 수 있어야 하는 모든 사용자에게 x_830655_mm_std.user 역할을 부여하려면 ServiceNow 시스템 관리자여야 합니다.
- ServiceNow 인스턴스에서 All > User Administration > Users(전체 > 사용자 관리 > 사용자)로 이동합니다.
- Users 페이지에서 역할을 추가할 사용자의 프로필을 엽니다.
- 테이블에서 Roles(역할) 탭을 선택하고 Edit(편집)을 선택합니다.
x_830655_mm_std.user역할을 검색해 사용자의 Roles 목록에 추가한 뒤 Save(저장)를 선택합니다. 이제 해당 사용자는 Mattermost 구독을 추가하거나 관리할 수 있습니다.
ServiceNow 웹훅 시크릿 변경 시 API 시크릿 갱신하기
- Mattermost에서 System Console > Plugins > ServiceNow(시스템 콘솔 > 플러그인 > ServiceNow)로 이동해 Webhook Secret을 복사합니다.
- ServiceNow 인스턴스에서
https://<your-instance>.service-now.com/x_830655_mm_std_servicenow_for_mattermost_notifications_auth_list.do로 직접 이동해 auth 테이블의 목록 보기를 엽니다.<your-instance>는 ServiceNow 인스턴스 서브도메인으로 바꿉니다. - 해당 페이지에서 Mattermost 서버 URL이 들어 있는 행을 선택합니다. 그런 행이 없으면 오른쪽 위의 New를 선택해 Mattermost 서버 URL을 추가하는 방식으로 직접 만듭니다.
- ServiceNow 인스턴스의 API Secret을 Mattermost의 Webhook Secret 값으로 갱신한 뒤 Update(갱신)를 선택합니다.
ServiceNow 인스턴스에는 어떤 변경이 적용됩니까?
- GetStates scripted REST API: 레코드에서 사용할 수 있는 여러 상태를 반환합니다. 지원 레코드: incident, task, change_task, cert_follow_on_task
- ServiceNow for Mattermost Notifications라는 이름의 애플리케이션.
- ServiceNow for Mattermost Notifications 애플리케이션은 구독 정보를 저장하고 구독한 이벤트에 대한 알림을 전송하는 역할을 합니다.
- 여러 Mattermost 서버 URL과 각각의 웹훅 시크릿을 저장하는 ServiceNow for Mattermost Notifications
Auth테이블. - 구독 정보를 저장하는 ServiceNow for Mattermost
Subscriptions테이블. - 여러 이벤트(예: 새 레코드 생성, 레코드에 댓글 추가, 레코드 상태 갱신 등)를 처리하는 Business rules(비즈니스 규칙).
- 구독 이벤트를 기준으로 알림을 전송하는 Script actions(스크립트 액션).
- 여러 레코드 유형 이벤트를 등록하는 Events registration(이벤트 등록).
Mattermost에서 접근할 수 있는 ServiceNow 테이블
incidentproblemchange_requestkb_knowledgetaskchange_taskcert_follow_on_taskx_830655_mm_std_servicenow_for_mattermost_notifications_authx_830655_mm_std_servicenow_for_mattermost_subscriptions- 위 테이블들을 확장한 모든 테이블
구독은 incident, problem, change_request 레코드 유형에서만 지원됩니다.
Mattermost 설정
Mattermost 시스템 관리자가 Mattermost에서 다음 단계를 수행해야 합니다.
제품 내 App Marketplace에서 ServiceNow 연동을 설치합니다.
웹훅 시크릿과 암호화 시크릿은 한 번만 표시되므로 복사해 두시기를 권장합니다.
- Mattermost의
제품 메뉴에서 App Marketplace를 선택합니다.
- ServiceNow를 검색하거나 목록에서 찾아 Install(설치)을 선택합니다.
- 설치가 끝나면 Configure(설정)를 선택합니다. 시스템 콘솔로 이동합니다.
- ServiceNow 설정 페이지에서 다음과 같이 ServiceNow 연동을 활성화하고 설정한 뒤 Save(저장)를 선택합니다.
- ServiceNow Server Base URL: ServiceNow 인스턴스의 기본 URL을 입력합니다.
- ServiceNow Webhook Secret: ServiceNow용 웹훅 시크릿을 재생성합니다. 이 키를 재생성하면 구독 알림이 중단됩니다. ServiceNow 인스턴스에서 시크릿을 갱신해 알림을 다시 수신하는 방법은 ServiceNow에서 OAuth 앱 만들기 문서를 참고하세요.
- ServiceNow OAuth Client ID: ServiceNow에 등록한 OAuth 앱의 clientID입니다.
- ServiceNow OAuth Client Secret: ServiceNow에 등록한 OAuth 앱의 클라이언트 시크릿입니다.
- Encryption Secret: Regenerate(재생성)를 선택하면 새 암호화 시크릿이 생성됩니다. 이 암호화 시크릿은 OAuth 토큰을 암호화·복호화하는 데 사용됩니다. 이 시크릿을 재생성하면 모든 사용자가 ServiceNow 계정을 다시 연결해야 합니다.
- Download ServiceNow Update Set: ServiceNow에 업로드할 업데이트 세트 XML 파일을 내려받습니다.
활성화
팀원들에게 ServiceNow 계정을 Mattermost에 연결할 수 있다는 사실을 알리세요.
업그레이드
새 버전이 릴리스될 때마다 이 연동을 업데이트하시기를 권장합니다. 일반적으로 업데이트는 매끄럽게 진행되며 Mattermost 사용자 경험을 방해하지 않습니다. 최신 릴리스와 제공 중인 릴리스, 호환성 고려 사항은 Releases 페이지에서 확인하세요.
사용
ServiceNow 연동을 사용하려는 사용자는 ServiceNow 계정을 Mattermost에 연결해야 합니다.
연결하고 나면 ServiceNow 활동에 대해 Mattermost에서 ServiceNow 봇으로부터 다이렉트 메시지를 받게 됩니다.
ServiceNow 계정을 Mattermost에 연결하기
- Mattermost 채널에서
/servicenow connect슬래시 명령어를 실행해 Mattermost 계정과 ServiceNow 계정을 연결합니다. 링크를 따라 ServiceNow 인스턴스로 이동한 뒤 Allow(허용)를 선택합니다. 연결을 해제하려면/servicenow disconnect슬래시 명령어를 실행하세요. 또는 오른쪽 앱 바에서 ServiceNow 아이콘을 선택해 ServiceNow 계정을 연결할 수도 있습니다. - 연결한 뒤
/servicenow help슬래시 명령어를 실행하면 가능한 작업을 확인할 수 있습니다.
사용할 수 있는 슬래시 명령어로는 알림 구독을 관리하는 /servicenow subscriptions, 채널에서 ServiceNow 레코드를 검색하고 공유하는 /servicenow share, Mattermost에서 바로 새 인시던트를 생성하는 /servicenow incident create 등이 있습니다.
맞춤 설정
이 연동은 서버 부분과 웹 앱 부분으로 구성됩니다.
ServiceNow는 ServiceNow 기반 개발을 원하는 누구에게나 개발자 인스턴스를 제공합니다. 개발자는 ServiceNow 개발자 계정으로 로그인한 뒤 오른쪽 위의 Request Instance(인스턴스 요청)를 선택해 ServiceNow 개발자 인스턴스를 받을 수 있습니다. 인스턴스가 생성되면 오른쪽 위 메뉴를 열어 Manage Instance Password(인스턴스 비밀번호 관리)로 이동한 뒤 새 탭에서 개발자 인스턴스에 로그인합니다.
이 연동을 맞춤 설정하는 방법은 Mattermost ServiceNow 플러그인 GitHub 저장소의 Development 섹션을 참고하세요.
Mattermost 기능을 개발·맞춤 설정·확장하는 방법은 Mattermost 개발자 워크플로와 Mattermost 개발 환경 설정을 참고하세요.
도움받기
Mattermost 고객은 Mattermost 지원 케이스를 열 수 있습니다. 버그를 신고하려면 Mattermost ServiceNow 플러그인 저장소에 GitHub 이슈를 등록해 주세요.
질문, 피드백, 도움이 필요하면 Mattermost 커뮤니티 서버의 공개 Integrations and Apps 채널에 참여하세요.
Mattermost Team Edition 및 무료 사용 고객은 Mattermost 사용자 간 문제 해결 포럼에서 전 세계 Mattermost 커뮤니티의 도움을 받을 수 있습니다.
인시던트 대응을 간소화하는 방법은 Mattermost와 ServiceNow를 활용한 인시던트 대응 온디맨드 웨비나에서 확인하세요.