주:
- 이 자습서에서는 Oracle Cloud에 액세스해야 합니다. 무료 계정에 등록하려면 Oracle Cloud Infrastructure Free Tier 시작하기를 참조하십시오.
- Oracle Cloud Infrastructure 자격 증명, 테넌시 및 구획에 예제 값을 사용합니다. 실습을 완료했으면 이러한 값을 자신의 클라우드 환경과 관련된 값으로 대체하십시오.
Python 스크립트를 사용하여 Oracle Cloud Guard 문제 보고서 검색
소개
점차 중요한 워크로드를 클라우드로 마이그레이션함에 따라 클라우드 인프라를 보호하는 것이 가장 중요해졌습니다. Oracle Cloud Infrastructure(OCI)는 클라우드 환경을 보호하기 위한 종합적인 보안 서비스 세트를 제공하며, OCI 보안 제품군의 주요 도구 중 하나는 Oracle Cloud Guard입니다.
Oracle Cloud Guard는 기업이 보안 상태, 위협 감지, 취약점 관리 및 규정 준수 검사에 대한 실시간 가시성을 제공하여 OCI 리소스를 보호할 수 있도록 지원합니다. Oracle Cloud Guard의 핵심 기능은 문제 보고서를 생성하는 기능으로, 강력한 보안 태세를 유지하려는 조직에게 매우 유용할 수 있습니다.
Oracle Cloud Guard 콘솔은 현재 문제 보고서 직접 익스포트를 지원하지 않습니다. 이 자습서에서는 JSON 및 CSV 형식으로 이러한 보고서를 생성하고 다운로드할 수 있는 Python 스크립트를 제공합니다. 문제가 감지되면 Oracle Cloud Guard는 문제 설명, 위험 수준, 영향을 받는 리소스 등과 같은 세부 정보를 포함하는 문제 보고서를 생성합니다.
이 스크립트를 사용하면 고객은 다음을 수행할 수 있습니다.
-
문제 데이터의 오프라인 분석을 수행합니다.
-
위협 감지 및 상관관계 향상을 위해 SIEM(Security Information and Event Management) 솔루션에 임시로 보고서를 업로드합니다.
-
분석 대시보드 또는 기타 보고 도구와 통합하여 패턴, 추세 및 근본 원인을 식별합니다.
이 접근 방식은 운영 효율성을 보장할 뿐만 아니라 고객이 더 깊은 통찰력을 얻고 강력한 보안 상태를 유지할 수 있도록 지원합니다.
목표
- Python 스크립트를 사용하여 Oracle Cloud Guard 문제 보고서를 검색합니다.
필요 조건
-
Oracle Cloud Guard를 보기 위한 Oracle Cloud Infrastructure Identity and Access Management(OCI IAM)의 액세스 권한. 자세한 내용은 Oracle Cloud Guard 사용을 참조하십시오.
-
OCI Cloud Shell에 대한 액세스. 자세한 내용은 Required IAM Policy for OCI Cloud Shell을 참조하십시오.
OCI Cloud Shell에서 Python 스크립트 실행
-
OCI 콘솔에 로그인합니다.
-
Cloud Shell을 눌러 OCI Cloud Shell을 엽니다.
-
다음 Python 스크립트를 복사하여 로컬 시스템에
report.py
로 저장하여 OCI Cloud Shell에서 실행합니다.import oci from datetime import datetime import json import csv config = oci.config.from_file() #print(config['tenancy']) #today = datetime.today() #print("Current date: ") #print(today) #firstdate = (today - timedelta(days=180)) #print("Time first detected is: ") #print(firstdate) cloud_guard_client = oci.cloud_guard.CloudGuardClient(config) list_problems_response = cloud_guard_client.list_problems( compartment_id=config['tenancy'], compartment_id_in_subtree=True, access_level="ACCESSIBLE", #time_first_detected_greater_than_or_equal_to=firstdate, limit=1000000) response = list_problems_response.data #print(response) string = str(response) res_data = json.loads(string) output_file = "problem_report.json" with open(output_file, 'w') as json_file: json.dump(res_data, json_file) with open('problem_report.json') as json_file: data = json.load(json_file) prob_data = data['items'] csv_file = open("problem_report.csv", "w", newline="") csv_writer = csv.writer(csv_file) count = 0 for res in prob_data: if count == 0: # Writing headers of CSV file header = res.keys() csv_writer.writerow(header) count += 1 # Writing data of CSV file csv_writer.writerow(res.values()) print("Script executed successfully") print("\nReports are generated and saved")
-
설정 아이콘을 누르고 업로드를 눌러 로컬 시스템에서 Python 스크립트 파일을 업로드합니다.
-
다음 명령을 사용하여 Python 스크립트를 실행하십시오.
python3 report.py
-
성공적으로 실행되면
problem_report.json
및problem_report.csv
폴더에 생성된 두 개의 파일을 볼 수 있습니다. -
보고서를 다운로드하려면 설정 아이콘을 누르고 다운로드합니다. 보고서의 경로와 파일 이름을 입력합니다.
참고: 스크립트가 실행되어 최근 180일 동안 발생한 문제를 표시하는 보고서를 제공합니다. 루트 구획에서 실행됩니다. 표시되는 하위 구획이 true로 설정되고, 구획 계층이 순회되고, 테넌시의 모든 구획 및 하위 구획이 반환됩니다.
다음 단계
OCI를 사용하는 조직의 경우 Oracle Cloud Guard 문제 보고서를 활용하는 것이 클라우드 보안 전략의 필수적인 부분이어야 합니다. 이러한 보고서를 정기적으로 검토하고 조치를 취하면 OCI 리소스를 보호하고 규정 준수를 보장하며 고객 및 이해 당사자의 신뢰를 유지하는 데 도움이 됩니다.
관련 링크
확인
- 작성자 - Samratha S P(Senior Cloud Engineer)
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Retrieve Oracle Cloud Guard Problem Reports using a Python Script
G23012-01
December 2024