Azure Automation 데이터 관리

이 문서에는 Azure Automation 환경에서 데이터를 보호하는 방법을 설명하는 여러 항목이 포함되어 있습니다.

Azure Automation용 TLS

Azure Automation으로 전송되는 데이터의 보안을 보장하려면 TLS(전송 계층 보안) 사용을 구성하는 것이 좋습니다. 다음은 HTTPS를 통해 자동화 서비스와 통신하는 메서드나 클라이언트의 목록입니다.

  • 웹후크 호출

  • 업데이트 관리를 통해 관리되는 컴퓨터와 변경 사항 추적 및 인벤토리를 포함하는 Hybrid Runbook Worker입니다.

  • DSC 노드

이전 버전의 TLS/SSL(Secure Sockets Layer)은 취약한 것으로 나타났으며, 여전히 이전 버전과 호환되지만 사용하지 않는 것이 좋습니다. TLS 1.3등을 사용할 수 있게 되면 더 안전한 최신 프로토콜을 자동으로 검색하고 활용할 수 있도록 플랫폼 수준 보안 기능을 중단할 수 있으므로 필요하지 않다면 에이전트가 TLS 1.2만을 사용하도록 명시적으로 설정하지 않는 것이 좋습니다.

Hybrid Runbook Worker 역할에 대한 종속성인 Windows 및 Linux용 Log Analytics 에이전트의 TLS 지원에 대한 자세한 내용은 Log Analytics 에이전트 개요-TLS를 참조하세요.

Hybrid Worker 및 웹후크 호출에 대한 TLS 프로토콜 업그레이드

2024년 10월 31일부터 TLS(전송 계층 보안) 1.0 및 1.1 프로토콜을 사용하는 모든 에이전트 기반 및 확장 기반 사용자 Hybrid Runbook Worker, 웹후크 및 DSC 노드는 더 이상 Azure Automation에 연결할 수 없습니다. TLS 1.0 및 1.1 프로토콜을 사용하여 Hybrid Worker에서 실행되거나 예약된 모든 작업이 실패합니다.

Runbook을 트리거하는 웹후크 호출이 TLS 1.2 이상에서 탐색되는지 확인합니다. 에이전트 및 확장 기반 작업자가 TLS 1.2 이상 프로토콜에서만 협상할 수 있도록 레지스트리를 변경해야 합니다. Windows 컴퓨터에서 Windows Hybrid Worker에서 TLS 1.0/1.1 프로토콜을 사용하지 않도록 설정하고 TLS 1.2 이상을 사용하도록 설정하는 방법을 알아봅니다.

Linux Hybrid Worker의 경우 다음 Python 스크립트를 실행하여 최신 TLS 프로토콜로 업그레이드합니다.

import os

# Path to the OpenSSL configuration file as per Linux distro
openssl_conf_path = "/etc/ssl/openssl.cnf"

# Open the configuration file for reading
with open(openssl_conf_path, "r") as f:
    openssl_conf = f.read()

# Check if a default TLS version is already defined
if "DEFAULT@SECLEVEL" in openssl_conf:
    # Update the default TLS version to TLS 1.2
    openssl_conf = openssl_conf.replace("CipherString = DEFAULT@SECLEVEL", "CipherString = DEFAULT@SECLEVEL:TLSv1.2")

    # Open the configuration file for writing and write the updated version
    with open(openssl_conf_path, "w") as f:
        f.write(openssl_conf)

    # Restart any services that use OpenSSL to ensure that the new settings are applied
    os.system("systemctl restart apache2")
    print("Default TLS version has been updated to TLS 1.2.")
else:
    # Add the default TLS version to the configuration file
    openssl_conf += """
    Options = PrioritizeChaCha,EnableMiddleboxCompat
    CipherString = DEFAULT@SECLEVEL:TLSv1.2
    MinProtocol = TLSv1.2
    """

    # Open the configuration file for writing and write the updated version
    with open(openssl_conf_path, "w") as f:
        f.write(openssl_conf)

    # Restart any services that use OpenSSL to ensure that the new settings are applied
    os.system("systemctl restart apache2")
    print("Default TLS version has been added as TLS 1.2.")

플랫폼별 지침

플랫폼/언어 지원 추가 정보
Linux Linux 배포판은 TLS 1.2 지원에 대해 OpenSSL을 사용하는 경향이 있습니다. OpenSSL Changelog를 확인하여 OpenSSL 버전이 지원되는지 확인합니다.
Windows 8.0 - 10 지원되며 기본적으로 사용하도록 설정됩니다. 기본 설정을 여전히 사용하는지 확인하려면
Windows Server 2012 - 2016 지원되며 기본적으로 사용하도록 설정됩니다. 기본 설정을 여전히 사용하는지 확인하려면
Windows 7 SP1 및 Windows Server 2008 R2 SP1 지원됨, 하지만 기본적으로 활성화되지 않습니다. 활성화하는 방법에 대한 자세한 내용은 TLS(전송 계층 보안) 레지스트리 설정 페이지를 참조하세요.

데이터 보존

Azure Automation에서 리소스를 삭제할 경우 영구적으로 제거하기 전에 감사를 위해 수일 동안 보존됩니다. 이 기간 동안에는 리소스를 보거나 사용할 수 없습니다. 이 정책은 삭제되는 Automation 계정에 속한 리소스에도 적용됩니다. 보존 정책은 모든 사용자에게 적용되며 지금은 사용자 지정할 수 없습니다. 하지만 데이터를 더 오랜 기간 동안 유지해야 하는 경우 Azure Automation 작업 데이터를 Azure Monitor 로그로 전달할 수 있습니다.

다음 표에는 여러 리소스에 대한 보존 정책이 요약되어 있습니다.

데이터 정책
Accounts 사용자가 삭제한 후 30일이 지나면 계정은 영구적으로 제거됩니다.
자산 자산은 사용자가 삭제한 후 30일이 지나거나 사용자가 자산을 보유한 계정을 삭제한 후 30일이 지나면 영구적으로 제거됩니다. 자산에는 변수, 일정, 자격 증명, 인증서, Python 2 패키지 및 연결이 포함됩니다.
DSC 노드 DSC 노드는 Azure Portal이나 Windows PowerShell에서 Unregister-AzAutomationDscNode cmdlet을 사용하여 자동화 계정에서 노드의 등록을 취소한 후 30일이 지나면 영구적으로 제거됩니다. 노드는 또한 사용자가 노드를 보유하는 계정을 삭제한 후 30일이 지나면 영구적으로 제거됩니다.
작업 작업 완료, 중지 또는 일시 중단과 같은 수정 이후 30일이 지나면 작업이 삭제되고 영구 제거됩니다.
모듈 모듈은 사용자가 삭제한 후 30일이 지나면 영구적으로 제거됩니다. 또는 사용자가 모듈을 보유한 계정을 삭제한 후 30일이 지나면 영구적으로 제거됩니다.
노드 구성/MOF 파일 이전 노드 구성은 새 노드 구성이 생성된 후 30일이 지나면 영구적으로 제거됩니다.
노드 보고서 노드 보고서는 해당 노드에 대한 새 보고서가 생성된 후 90일이 지나면 영구적으로 제거됩니다.
Runbook Runbook은 사용자가 리소스를 삭제한 후 30일이 지나면 영구적으로 제거됩니다. 또는 사용자가 리소스를 보유한 계정을 삭제한 후 30일이 지나면 영구적으로 제거됩니다1.

1 Runbook은 30일 내에 Microsoft Azure 지원 서비스에 Azure 지원 인시던트를 제출하면 복구할 수 있습니다. 여전히 도움이 필요한 경우 Azure 지원 사이트로 이동하여 지원 요청 제출을 선택합니다.

데이터 백업

Azure에서 Automation 계정을 삭제하면 계정의 모든 개체가 삭제됩니다. 개체에는 Runbook, 모듈, 구성, 설정, 작업 및 자산이 포함됩니다. 30일 이내에 삭제된 자동화 계정은 복구할 수 있습니다. Automation 계정을 삭제하기 전에 다음 정보를 사용하여 Automation 계정의 내용을 백업할 수도 있습니다.

Runbook

Azure Portal 또는 Windows PowerShell의 Get-AzureAutomationRunbookDefinition을 사용하여 Runbook을 스크립트 파일로 내보낼 수 있습니다. Azure Automation에서 Runbook 관리에서 설명하는 것과 같이 다른 Automation 계정으로 스크립트 파일을 가져올 수 있습니다.

통합 모듈

Azure Automation에서 통합 모듈을 내보낼 수 없으며 자동화 계정 외부에서 사용할 수 있어야 합니다.

자산

인증서, 연결, 자격 증명, 일정 및 변수 등 Azure Automation 자산을 내보낼 수 없습니다. 대신 Azure Portal 및 Azure cmdlet을 사용하여 이러한 자산에 대한 세부 정보를 확인할 수 있습니다. 그런 다음 이러한 세부 정보를 사용하여 다른 Automation 계정으로 가져온 Runbook에서 사용하는 자산을 만듭니다.

자격 증명의 암호 필드 또는 암호화된 변수 값은 cmdlet을 사용하여 검색할 수 없습니다. 이러한 값을 모르는 경우 Runbook에서 검색할 수 있습니다. 변수 값 검색은 Azure Automation에서 변수 관리를 참조하세요. 자격 증명 값 검색을 자세히 알아보려면 Azure Automation의 자격 증명 자산을 참조하세요.

DSC 구성

Azure Portal 또는 Windows PowerShell의 Export-AzAutomationDscConfiguration cmdlet을 사용하여 DSC 구성을 스크립트 파일로 내보낼 수 있습니다. 다른 Automation 계정에서 이러한 구성을 가져오고 사용할 수 있습니다.

데이터 보존

Azure Automation 계정을 만드는 동안 지역을 지정합니다. 자산, 구성, 로그와 같은 서비스 데이터는 해당 지역에 저장되며 동일한 지리 내의 다른 지역에서 전송되거나 처리될 수 있습니다. 이러한 글로벌 엔드포인트는 위치에 관계없이 최종 사용자에게 대기 시간이 짧은 고성능 환경을 제공하는 데 필요합니다. 브라질 지역의 브라질 남부(상파울루 주), 아시아 태평양 지역의 동남 아시아 지역(싱가포르), 동아시아 지역(홍콩)의 지역에만 해당 지역에 대한 데이터 상주 요구 사항을 수용하기 위해 동일한 지역에 Azure Automation 데이터를 저장합니다.

다음 단계