# 위협 탐지룰 연관 콘텐츠 개발기

## 왜 이 기능이 필요할까?

이전 콘텐츠에서 위협 탐지룰을 AI · 수동으로 생성 및 추가하는 과정에서 해당 위협 탐지룰이 다른 콘텐츠에서도 연관된 내용으로 존재할 수 있기 때문에, 연관 콘텐츠를 이어줌으로써 그물 형태의 위협 행위들을 조금 더 다양하게 탐지할 수 있다.

## 기능에서 요구하는 필수 구현 사항

- 자사 보고서 콘텐츠 조회 기능

    - 현재 백오피스에서는 모든 콘텐츠 제목을 검색하는 기능을 제공하고 있기 때문에, 자사 보고서의 코드들을 통해 클라이언트에서 `filter` 메서드를 통해 처리를 하도록 한다.

    - 해당  조회 기능의 경우, 백엔드에서 페이징을 지원하지 않는다. 그래서 키워드에 따라 몇백개의 게시글이 조회되는 경우가 있는데 매번 조회를 하기보다는 디바운스를 통해 검색 과정에서 성능 최적화를 진행한다.

- 연관 콘텐츠 연결 기능

    - 위협 탐지룰이 배포된 상태에서만 연관 콘텐츠를 연결할 수 있다.

    - 연결 시간 동안 사용자에게 기다리는 유저 인터페이스를 제공하기 보다는, 낙관적 업데이트를 통해 빠르게 업데이트 사항을 보여준다. (단, 실패할 경우에는 이전 낙관적 업데이트 전 백업 리스트로 되돌린다)

- 연관 콘텐츠 연결 취소 기능

    - 위협 탐지를이 배포되지 않은 상태에서만 연관 콘텐츠의 연결을 취소할 수 있다.

    - 연관 콘텐츠 연결 기능과 유사하게 기능 개발을 진행한다.

## 도전적이었던 점

- 해당 기능에는 딱히 어려운 점은 없었다. 조회 및 관련 데이터를 컨트롤 하는 기능의 경우에는 수도 없이 만들어보았기 때문에 이번 기능은 초기 설계도 간단하고 명료하게 할 수 있어서 빠르게 개발에 착수할 수 있었다.

## 어려웠던 점

- 비교적 간단한 기능이라 어려웠던 점은 없었으나, ”백오피스의 이 기능을 어떻게 녹일 수 있는가?“, “어떻게 하면 사용자가 편하게 사용할 수 있을까?”에 대한 고민을 했었던 것 같다. 그래서 레이아웃을 기획하고 개발한 결과물을 스테이징 서버에 반영하여 팀원들에게 보여주고, 피드백을 받는 과정이 필수적이었던 것 같다.

## 결과물

- 연관 콘텐츠 조회 기능

![Image](https://upload.cafenono.com/image/slashpagePost/20260520/001139_Em93kpTlrcB02UQMl7?q=80&s=1280x180&t=outside&f=webp)

- 연관 콘텐츠 조회 기능 > 키워드 검색 시 (Kimsuky)

    - 이때, 키워드와 검색된 키워드와 쉽게 찾을 수 있도록 마커 스타일을 추가로 표현해주었다. 

![Image](https://upload.cafenono.com/image/slashpagePost/20260520/001140_715FvVWveq6IBytl2u?q=80&s=1280x180&t=outside&f=webp)

- 연관 콘텐츠 조회 기능 > 조회된 결과 중 콘텐츠 연결 후

![Image](https://upload.cafenono.com/image/slashpagePost/20260520/001139_kEktomanmgnAatT0RW?q=80&s=1280x180&t=outside&f=webp)

- 연관 콘텐츠 조회 기능 > 해당 자사 보고서로 이동

![Image](https://upload.cafenono.com/image/slashpagePost/20260520/001139_TQB1HYc3gjVph9YseW?q=80&s=1280x180&t=outside&f=webp)

For the site tree, see the [root Markdown](https://slashpage.com/timmy.md).
