다음을 통해 공유


Orchestration 데이터베이스 보안

 

게시 날짜: 2016년 3월

적용 대상: System Center 2012 SP1 - Orchestrator, System Center 2012 - Orchestrator, System Center 2012 R2 Orchestrator

다음 섹션에서는 Orchestrator의 Orchestration 데이터베이스를 보호하는 방법에 대해 설명합니다.

  • 데이터베이스 역할

  • SQL Server 연결 보안

  • 암호화 키

데이터베이스 역할

Orchestration 데이터베이스에 대한 보안은 지원되는 Microsoft SQL Server 버전의 데이터베이스 역할을 통해 구현됩니다. 아래의 표에는 Orchestration 데이터베이스에 생성되는 역할과 각 데이터베이스에 부여되는 사용 권한이 정리되어 있습니다. 이러한 역할은 보통 해당 역할에 대해 직접 작업해야 할 필요가 없으므로 설치 프로세스 중 구성되어 필요한 구성원으로 채워집니다. 여기에 나와 있는 정보를 사용하면 관리자는 구성 이면의 보안을 더 쉽게 이해할 수 있고 가능한 사용자 지정 시나리오를 준비할 수 있습니다.

계정 데이터베이스 역할
Management Service 계정 Microsoft.SystemCenter.Orchestrator.Admins
Orchestrator 관리자 그룹의 구성원 Microsoft.SystemCenter.Orchestrator.Admins
Orchestrator Runbook Service 계정 Microsoft.SystemCenter Orchestrator.Runtime
Orchestrator Runbook Server 모니터 서비스 계정 Microsoft.SystemCenter Orchestrator.Runtime
Orchestrator 웹 서비스 사용자 계정 Microsoft.SystemCenter Orchestrator.Operators
역할 사용 권한 개체
Microsoft.SystemCenter Orchestrator.Operators 선택 [Microsoft.SystemCenter.Orchestrator.Runtime].[Jobs],

[Microsoft.SystemCenter.Orchestrator.Runtime].[RunbookInstances],

[Microsoft.SystemCenter.Orchestrator.Runtime].[RunbookInstanceParameters],

[Microsoft.SystemCenter.Orchestrator.Runtime].[RunbookServers],

[Microsoft.SystemCenter.Orchestrator.Runtime].[ActivityInstances],

[Microsoft.SystemCenter.Orchestrator.Runtime].[ActivityInstanceData],

[Microsoft.SystemCenter.Orchestrator.Runtime].[Events],

[Microsoft.SystemCenter.Orchestrator.Statistics].[Statistics]
Microsoft.SystemCenter Orchestrator.Operators 실행 [Microsoft.SystemCenter.Orchestrator].[GetSecurityToken],

[Microsoft.SystemCenter.Orchestrator].[AccessCheck],

[Microsoft.SystemCenter.Orchestrator].[ComputeAuthorizationCache],

[Microsoft.SystemCenter.Orchestrator.Statistics.Internal].[GetStatisticsSummary],

[Microsoft.SystemCenter.Orchestrator.Runtime].[CreateJob],

[Microsoft.SystemCenter.Orchestrator.Runtime].[CancelJob]
Microsoft.SystemCenter Orchestrator.Runtime 선택 모든 테이블,

dbo.[POLICIES_VIEW],

dbo.[POLICY_REQUEST_HISTORY]
Microsoft.SystemCenter Orchestrator.Runtime 삽입 dbo.[OBJECT_AUDIT]
Microsoft.SystemCenter Orchestrator.Runtime 삽입, 업데이트 dbo.[OBJECTS],

dbo.[ACTIONSERVERS],

dbo.[POLICYINSTANCES],

dbo.[OBJECTINSTANCES],

dbo.[OBJECTINSTANCEDATA]
Microsoft.SystemCenter Orchestrator.Runtime 삽입, 삭제 dbo.[COUNTERINSTANCES],

dbo.[POLICYRETURNDATA]
Microsoft.SystemCenter Orchestrator.Runtime 업데이트 dbo.[POLICY_PUBLISH_QUEUE]
Microsoft.SystemCenter Orchestrator.Runtime 제어 [ORCHESTRATOR_ASYM_KEY],

[ORCHESTRATOR_SYM_KEY]
Microsoft.SystemCenter Orchestrator.Runtime 실행 dbo.sp_insertevent,

dbo.sp_PublishPolicy,

dbo.sp_UnpublishPolicy,

dbo.sp_UnpublishPolicyRequest,

dbo.fn_GetPolicyInstanceStatus,

dbo.fn_NumFailedInstancesPerServer,

dbo.fn_NumInstancesPerServer,

dbo.fn_NumRunningInstancesPerServer,

[Microsoft.SystemCenter.Orchestrator.Cryptography].[Encrypt],

[Microsoft.SystemCenter.Orchestrator.Cryptography].[Decrypt],

[Microsoft.SystemCenter.Orchestrator.Internal].[RethrowError]
Microsoft.SystemCenter Orchestrator.Admins 선택, 삽입, 업데이트, 삭제, 변경, 테이블 만들기 SCHEMA::dbo
Microsoft.SystemCenter Orchestrator.Admins 참조 dbo.[OBJECTS]
Microsoft.SystemCenter Orchestrator.Admins 선택 dbo.[POLICIES_VIEW], GRANT SELECT ON dbo.[POLICY_REQUEST_HISTORY]
Microsoft.SystemCenter Orchestrator.Admins 제어 [ORCHESTRATOR_ASYM_KEY],

[ORCHESTRATOR_SYM_KEY]
Microsoft.SystemCenter Orchestrator.Admins 실행 [Microsoft.SystemCenter.Orchestrator.Cryptography].[CreateOrchestratorKeys],

[Microsoft.SystemCenter.Orchestrator.Cryptography].[DropOrchestratorKeys],

[Microsoft.SystemCenter.Orchestrator.Cryptography].[Encrypt],

[Microsoft.SystemCenter.Orchestrator.Cryptography].[Decrypt],

[Microsoft.SystemCenter.Orchestrator.Internal].[RethrowError],

dbo.sp_CustomLogCleanup,

dbo.sp_GetLogEntriesForDelete_FilterByDays,

dbo.sp_GetLogEntriesForDelete_FilterByEntries,

dbo.sp_GetLogEntriesForDelete_FilterByEntriesAndDays,

dbo.sp_insertevent,

dbo.sp_PublishPolicy,

dbo.sp_UnpublishPolicy,

dbo.sp_UnpublishPolicyRequest,

dbo.fn_GetPolicyInstanceStatus,

dbo.fn_NumFailedInstancesPerServer,

dbo.fn_NumInstancesPerServer,

dbo.fn_NumRunningInstancesPerServer,

[Microsoft.SystemCenter.Orchestrator.Internal].AddUserToRole,

[Microsoft.SystemCenter.Orchestrator].[SetPermissions],

[Microsoft.SystemCenter.Orchestrator.Internal].[SetProductInfo]

데이터베이스 구성 유틸리티(DBSetup.exe)를 사용하려면 Management Server가 설치되어 있는 컴퓨터의 사용자이며 settings.dat 파일에 액세스할 수 있는 관리자 또는 Orchestrator 사용자 그룹의 구성원인 사용자의 사용 권한이 필요합니다. DBDataStore.dll을 통해 직접 데이터베이스에 연결하는 사용자 지정 도구의 경우에도 동일한 사용 권한이 필요합니다.

System_CAPS_ICON_important.jpg 중요

Orchestrator를 설치하는 경우, 잠재적인 권한 상승을 방지하려면 SQL Server에 연결하는 데 사용하는 계정에 SQL Server에 대한 최소 권한이 있는지 확인하십시오.

SQL Server 연결 보안

Orchestrator의 기본 배포에서 SQL Server 연결은 보호되지 않습니다. 단, Orchestrator에서 중요한 데이터를 저장하거나 검색하는 경우는 예외입니다. 이런 경우에는 Orchestrator에서 자체 서명된 인증서로 SQL Server에 대한 보안 연결을 만듭니다. 인증서는 강력한 보안을 제공하지 않으며 메시지 가로채기(man-in-the-middle) 공격에 취약합니다.

SQL Server에 대한 연결을 암호화하는 방법에 대한 자세한 내용은 SSL을 구성하여 SQL Server 연결 암호화를 참조하십시오. 데이터베이스 엔진에 대한 연결을 사용하는 방법에 대한 자세한 내용은 방법: 데이터베이스 엔진에 암호화 연결 사용(SQL Server 구성 관리자)을 참조하세요.

암호화 키

보안을 계획하는 과정에서, 암호화 키를 정기적으로 교체하는 계획을 세워야 합니다. NIST(National Institute of Standards and Technology)에서는 2년마다 한 번씩 키를 교체하도록 권장합니다. NSIT 보안 표준에 대한 자세한 내용은 NSIT Computer Security Division Computer Security Resource Center(NSIT 컴퓨터 보안 부서 컴퓨터 보안 리소스 센터)를 참조하십시오.

암호화 키를 교체하려면

  1. Runbook Designer에서 모든 Runbook, 전역 설정, 변수, 예약 등을 내보냅니다.

    내보내기를 위한 암호를 제공해야 합니다.

    내보내기 중 암호화된 모든 데이터는 암호 해독되고 암호로 생성된 새 키로 다시 암호화됩니다.

  2. 원하는 경우 SQL Server 마스터 데이터베이스 키를 변경합니다.

    Orchestrator는 SQL Server 마스터 데이터베이스 키와 Orchestrations 데이터베이스용 마스터 데이터베이스를 모두 사용하여 데이터를 암호화합니다.

    SQL Server 마스터 데이터베이스 키를 변경하는 방법에 대한 자세한 내용은 SQL Server 및 데이터베이스 암호화 키(데이터베이스 엔진)를 참조하십시오.

  3. Management Server를 다시 설치하고 새 데이터베이스를 만듭니다.

    Management Server를 설치하는 방법에 대한 자세한 내용은 Management Server를 설치하는 방법 항목을 참조하십시오.

    기존 데이터베이스에 연결하지 않습니다. 새 데이터베이스를 만들 때 새로운 암호화 키가 생성됩니다.

  4. Runbook Designer에서 Runbook 및 내보냈던 다른 모든 데이터를 다시 가져옵니다.

    내보내기에 사용되는 암호를 제공합니다. 내보내기 파일의 데이터는 암호를 사용하여 암호 해독되고, 새로운 Orchestrator 마스터 데이터베이스 키를 사용하여 데이터베이스에 가져올 때 암호화됩니다.