Jira Cloud 통합의 Snyk Security

circle-info

Jira Server 및 Jira Data Center는 지원되지 않습니다.

Jira Cloud의 Snyk 보안(Snyk Security in Jira Cloud)은 개발자가 자신의 코드 리포지토리와 관련된 보안 취약점을 Jira 인터페이스에서 직접 식별하고, 우선순위를 정하며, 분류하도록 돕습니다.

Jira Cloud의 Snyk 보안 통합은 Snyk 플랫폼의 Snyk 스캔 결과를 Jira로 미러링합니다. 기본 Jira 환경에서 Snyk 결과를 보고 필요에 따라 결과에 대한 Jira 이슈를 생성할 수 있습니다. 어떤 Snyk 조직이 연결되어 있고 어떤 Snyk 타겟(Target)이 Jira 프로젝트와 연관되어 있는지 확인할 수 있습니다.

Jira Cloud의 Snyk 보안 설치를 위한 전제 조건

Jira Cloud의 Snyk 보안은 Jira 앱입니다.

Jira 앱을 설치하고 구성하려면 site-admins, administrators 또는 jira-administrators 그룹의 Jira Cloud 관리자여야 합니다. Jira Cloud의 Snyk 보안 앱 설치를 지원받으려면 IT 팀에 문의하십시오.

circle-exclamation

Jira 앱을 Snyk에 연결하려면 Snyk 조직 관리자여야 합니다.

Jira에서 Jira Cloud의 Snyk 보안을 활성화하려면, Project Settings > Features > Development > Security로 이동하여 SecurityON으로 토글하십시오.

통합이 작동하는 데 필요한 다음 권한 범위가 Jira에 있는지 확인하십시오.

Jira에 필요한 권한 범위
목적

호스트 애플리케이션에 데이터 쓰기 (Write data to the host application)

Snyk의 취약점을 Jira와 동기화하여 Jira의 보안 탭에 표시합니다.

호스트 애플리케이션에서 데이터 읽기 (Read data from the host application)

이슈 동기화 프로세스를 최적화하기 위해 Jira에서 취약점을 읽습니다.

호스트 애플리케이션에서 데이터 삭제 (Delete data from the host application)

Snyk 조직이 Jira에서 제거될 때 Jira에서 취약점을 제거합니다.

circle-exclamation

Jira Cloud의 Snyk 보안 설치

Atlassian Marketplace에서 Snyk Security in Jira Cloudarrow-up-right를 설치하려면 다음 단계를 따르십시오.

  1. Jira에서 Apps > Find new apps로 이동합니다.

  2. Snyk Security in Jira Cloud를 검색합니다. EUarrow-up-right 또는 AUarrow-up-right 지역용 Jira를 설치하는 경우, Atlassian 앱 마켓플레이스에서 전용 EU 또는 AU 앱을 설치해야 합니다. SNYK-US-02(https://app.us.snyk.io/arrow-up-right)를 사용 중인 경우 Atlassian 앱 마켓플레이스에서 SNYK-US-02arrow-up-right 앱을 설치해야 합니다.

  3. 앱을 클릭한 다음 Get it now를 선택합니다.

  4. 앱에 대한 정보를 검토하고 Get it now를 선택합니다.

  5. 지침에 따라 앱을 설치합니다.

Jira Cloud의 Snyk 보안 앱 구성

  1. Apps > Manage apps로 이동합니다.

  2. 왼쪽 메뉴에서 Snyk Security in Jira를 선택합니다.

  3. Snyk 계정에 로그인하거나 새 Snyk 계정에 가입합니다.

  4. Snyk에서 Grant access를 선택하여 Snyk이 Jira Software 계정 정보를 읽을 수 있도록 허용합니다.

  5. Jira 사이트에 연결할 특정 Snyk 조직을 선택하고 Grant app access를 선택합니다.

코드 리포지토리를 Jira 프로젝트에 연결

Snyk을 Jira에 연결하기 위한 다음 단계들을 완료하면 Jira에서 보안 이슈 분류를 시작할 수 있습니다.

circle-info

일반적으로 연구 개발 엔지니어링 관리자가 이 작업을 수행합니다. 그들이 Jira 프로젝트를 소유하고 팀의 코드 리포지토리를 알고 있기 때문입니다.

  1. Jira에서 Project로 이동하여 Security 탭을 선택합니다.

  2. Connect security containers 버튼을 클릭합니다.

  3. Snyk 애플리케이션을 클릭한 다음 Connect security containers를 선택합니다.

    Security 탭 및 패널을 통해 Jira에서 보안 컨테이너 연결
    Security 탭 및 패널을 통해 Jira에서 보안 컨테이너 연결
  4. 목록에서 Snyk 조직을 선택하고 Jira에 연결할 Snyk 타겟(Target)을 선택합니다.

Security 패널을 통해 Jira에서 보안 컨테이너 연결
Security 패널을 통해 Jira에서 보안 컨테이너 연결

이제 개발자는 보안 기능을 사용하여 연결된 코드 리포지토리에서 발견된 최근 취약점을 보고, 해당 취약점으로부터 Jira 이슈를 생성하거나 기존 Jira 이슈에 연결할 수 있습니다.

circle-info

Snyk과 Jira 간의 이슈 동기화는 비동기적으로 발생하므로 이슈가 Jira에 표시될 때까지 지연이 있을 수 있습니다.

circle-info

Jira Security 탭에는 보안 취약점만 표시됩니다.

타겟 또는 리포지토리 삭제

Jira에 연결한 타겟 또는 리포지토리를 Snyk에서 삭제하려면, 먼저 각 Jira 프로젝트의 Security 패널을 통해 Jira에서 컨테이너 코드 리포지토리를 삭제해야 합니다. 그런 다음 Snyk에서 타겟 또는 리포지토리를 제거할 수 있습니다.

  1. Jira에서 Project로 이동하여 Security 탭을 선택합니다.

  2. Connect security containers 버튼을 클릭합니다.

  3. Snyk 애플리케이션을 클릭합니다.

  4. Remove connection 옵션을 사용하여 목록에서 제거하려는 보안 컨테이너를 선택합니다.

Jira Security 패널에서 연결된 보안 컨테이너 제거
Jira Security 패널에서 연결된 보안 컨테이너 제거

Jira에서 티켓 생성 자동화

다음 단계는 Jira 자동화(Jira automation)를 사용하여 Snyk 취약점에 대해 자동으로 티켓을 생성하는 방법을 설명합니다.

  1. Jira의 프로젝트에서 Project Settings로 이동한 다음 Automation을 선택합니다.

  2. Create Rule을 클릭합니다.

  3. 트리거(Trigger)로 Vulnerability Found를 설정합니다. 최소 티켓 심각도를 선택합니다.

    새 규칙에 대한 취약점 심각도 선택
  4. Add Component, Then을 차례로 클릭하고 Create Issue를 선택합니다. 프로젝트와 이슈 유형을 선택합니다.

    새 규칙에 대한 작업 추가 및 이슈 생성
  5. 요약(summary) 필드에 "Fix {{vulnerability.displayName}}"를 추가합니다. Description에는 {{vulnerability.description.wiki}}를 넣습니다.

    새 규칙에 대한 요약 필드 및 설명 추가
  6. Add Component, Then을 차례로 클릭하고 Security 아래의 Link vulnerability to issue를 선택합니다.

  7. Turn on rule을 선택합니다.

Jira에서 보안 취약점 관리

Jira Cloud의 Snyk 보안 앱을 설치하고 구성한 후, Jira 프로젝트 페이지의 보안 탭에서 취약점을 볼 수 있습니다.

Snyk Security in Jira Cloud tab.
Jira Cloud의 Snyk 보안 탭

취약점을 찾으려면 Vulnerabilities 섹션으로 이동하십시오. Snyk은 심각도, 상태 및 식별자를 보여줍니다. 제목을 클릭하면 Snyk 웹 UI에서 세부 정보를 볼 수 있습니다.

취약점 검색, 필터링 및 정렬

Vulnerabilities 섹션의 검색창과 필터를 사용하여 조직과 관련된 취약점만 표시하도록 목록을 사용자 정의하십시오.

무시되었거나 닫힌 취약점은 기본적으로 Vulnerabilities 섹션에 표시되지 않지만, Vuln. status filter를 사용하여 볼 수 있습니다.

테이블의 열 제목을 선택하여 해당 속성에 따라 모든 취약점을 정렬하십시오.

취약점에서 Jira 이슈 생성

이슈를 분류할 때, 취약점 해결을 위해 필요한 작업이 계획되고 추적되도록 스프린트이나 백로그에 Jira 이슈를 추가할 수 있습니다.

Snyk은 Jira에 취약점 정보를 제공하여 사용자가 이슈 해결을 위한 포괄적인 데이터를 가질 수 있게 합니다.

Jira 이슈를 추가하려면 Snyk 보안 탭으로 이동하여 취약점을 찾고 Create issue를 클릭하십시오.

Snyk에서 발견된 취약점으로 생성된 Jira 이슈
Snyk에서 발견된 취약점으로 생성된 Jira 이슈

기존 Jira 이슈를 취약점에 연결

취약점에 이미 Jira 이슈가 있는 경우, Actions 열의 세 점을 클릭하고 Link issue를 선택하여 취약점을 기존 Jira 이슈에 연결할 수 있습니다.

Jira 보안 기능에서 해결된 취약점 자동 닫기

이 단계는 Jira 자동화와 JQL을 사용하여 현재 닫힌 상태인 취약점에 대한 티켓을 자동으로 닫거나 상태를 변경하는 방법을 설명합니다.

  1. Jira의 프로젝트에서 Project Settings로 이동한 다음 Automation을 선택합니다.

  2. Create Rule 버튼을 클릭합니다.

  3. Scheduled를 클릭한 다음 다시 Scheduled를 클릭합니다.

Add Scheduled trigger
예약된 트리거 추가
  1. Run a JQL search 체크박스를 선택하고 필드에 status != Done AND vulnerability[status] = CLOSED를 입력합니다. 그런 다음 Next를 클릭합니다.

Set up a scheduled JQL search
예약된 JQL 검색 설정
  1. 새 컴포넌트를 추가하고 THEN: Add an action을 선택합니다. Issue actions를 선택하고 Transition issue를 선택합니다.

Transition issue action
이슈 전환 작업
  1. 워크플로우에 따라 Destination statusDone 또는 다른 상태로 설정합니다.

Set up the transition to Done status
Done 상태로의 전환 설정
  1. 설정을 마쳤으면 이름을 지정하고 Turn on rule을 클릭합니다.

이제 설정한 일정에 따라 Jira는 취약점은 닫혔지만 이슈는 닫히지 않은 모든 이슈를 검색하여 각 Jira 이슈를 닫게 됩니다.

Jira Cloud의 Snyk 보안 제거

circle-exclamation
  1. Jira 메인 메뉴에서 Apps로 이동하여 Manage your apps를 선택합니다.

  2. Snyk Security in Jira를 선택합니다.

  3. Uninstall 버튼을 클릭합니다.

Last updated