다음을 통해 공유


ID 모범 사례

이 문서에서는 Azure Databricks에서 ID를 가장 잘 구성하는 방법에 대한 의견을 제공합니다. 여기에는 Azure Databricks 계정에서 모든 사용자, 그룹 및 서비스 주체를 관리할 수 있게 해주는 ID 페더레이션으로 마이그레이션하는 방법에 대한 가이드가 포함되어 있습니다.

Azure Databricks ID 모델에 대한 개요는 Azure Databricks ID를 참조하세요.

Azure Databricks API에 안전하게 액세스하는 방법에 대한 자세한 내용은 개인용 액세스 토큰 권한 관리를 참조하세요.

사용자, 서비스 주체 및 그룹 구성

Azure Databricks ID에는 세 가지 형식이 있습니다.

  • 사용자: Azure Databricks에서 인식하고 이메일 주소로 표시되는 사용자 ID입니다.
  • 서비스 주체: 스크립트, 앱, CI/CD 플랫폼과 같은 시스템, 자동화된 도구 및 작업과 함께 사용하기 위한 ID입니다.
  • 그룹: 그룹은 ID 관리를 간소화하여 작업 영역, 데이터 및 기타 보안 개체에 대한 액세스를 더 쉽게 할당할 수 있도록 합니다.

Databricks는 프로덕션 작업을 실행하거나 프로덕션 데이터를 수정하기 위해 서비스 주체를 만드는 것이 좋습니다. 프로덕션 데이터에 대해 작동하는 모든 프로세스가 서비스 주체를 사용하여 실행되는 경우 대화형 사용자는 프로덕션에서 쓰기, 삭제 또는 수정 권한이 필요하지 않습니다. 이렇게 하면 사용자가 실수로 프로덕션 데이터를 덮어쓸 위험이 없습니다.

Unity Catalog의 작업 영역 및 액세스 제어 정책에 대한 액세스 권한을 사용자에게 개별적으로 할당하는 대신 그룹에 할당하는 것이 가장 좋습니다. 모든 Azure Databricks ID는 그룹의 구성원으로 할당될 수 있으며 구성원은 해당 그룹에 할당된 권한을 상속합니다.

Azure Databricks ID를 관리할 수 있는 관리 역할은 다음과 같습니다.

  • 계정 관리자는 계정에 사용자, 서비스 주체, 그룹을 추가하고 관리자 역할을 할당할 수 있습니다. 해당 작업 영역에서 ID 페더레이션을 사용하는 한, 사용자에게 작업 영역에 대한 액세스 권한을 부여할 수 있습니다.
  • 작업 영역 관리자는 사용자, 서비스 주체를 Azure Databricks 계정에 추가할 수 있습니다. 작업 영역이 ID 페더레이션에 사용하도록 설정된 경우 Azure Databricks 계정에 그룹을 추가할 수도 있습니다. 작업 영역 관리자는 사용자, 서비스 주체, 그룹에 작업 영역에 대한 액세스 권한을 부여할 수 있습니다.
  • 그룹 관리자는 그룹 구성원을 관리할 수 있습니다. 다른 사용자에게 그룹 관리자 역할을 할당할 수도 있습니다.
  • 서비스 주체 관리자는 서비스 주체의 역할을 관리할 수 있습니다.

Databricks에서는 각 작업 영역에 계정별로 제한된 수의 계정 관리자와 작업 영역 관리자가 있는 것이 좋습니다.

Microsoft Entra ID에서 Azure Databricks 계정에 사용자 및 그룹 동기화

Databricks는 SCIM 프로비저닝을 사용하여 사용자 및 그룹을 Microsoft Entra ID에서 Azure Databricks 계정으로 자동 동기화할 것을 권장합니다. SCIM은 Microsoft Entra ID를 사용하여 Azure Databricks에서 사용자 및 그룹을 만들고 적절한 수준의 액세스 권한을 부여하여 새 직원 또는 팀의 온보딩을 간소화합니다. 사용자가 조직을 떠나거나 더 이상 Azure Databricks에 액세스할 필요가 없는 경우 관리자는 Microsoft Entra ID에서 사용자를 종료할 수 있으며 해당 사용자의 계정도 Azure Databricks에서 제거됩니다. 이는 일관된 오프보딩 프로세스를 보장하고 권한이 없는 사용자가 중요한 데이터에 액세스하는 것을 방지합니다.

Microsoft Entra ID의 모든 사용자 및 그룹을 개별 작업 영역이 아닌 계정 콘솔에 동기화하는 것을 목표로 해야 합니다. 이렇게 하면 계정의 모든 작업 영역에서 모든 ID를 일관되게 유지하기 위해 하나의 SCIM 프로비저닝 애플리케이션만 구성하면 됩니다. 모든 Microsoft Entra ID 사용자가 Azure Databricks에 액세스할 수 있도록 설정을 참조하세요.

Important

ID를 작업 영역에 직접 동기화하는 SCIM 커넥터가 이미 있는 경우 계정 수준 SCIM 커넥터를 사용하려면 해당 SCIM 커넥터를 사용하지 않도록 설정해야 합니다. ID 페더레이션으로 업그레이드를 참조하세요.

계정 수준 SCIM 다이어그램

계정 수준 SCIM 다이어그램

ID 공급자에 10,000명 미만의 사용자가 있는 경우 Databricks는 모든 사용자를 포함하는 ID 공급자의 그룹을 계정 수준 SCIM 애플리케이션에 할당하는 것을 권장합니다. 그런 다음, ID 페더레이션을 사용하여 특정 사용자, 그룹 및 서비스 주체를 계정에서 Azure Databricks 내의 특정 작업 영역으로 할당할 수 있습니다.

ID 페더레이션 사용

ID 페더레이션을 사용하면 계정 콘솔에서 사용자, 서비스 주체 및 그룹을 구성한 다음, 해당 ID 액세스 권한을 특정 작업 영역에 할당할 수 있습니다. 이렇게 하면 Azure Databricks 관리 및 데이터 거버넌스가 간소화됩니다.

Important

Databricks는 2023년 11월 9일에 ID 페더레이션 및 Unity 카탈로그에 새 작업 영역을 자동으로 사용하도록 설정하기 시작했으며, 계정 간에 점진적으로 롤아웃이 진행되었습니다. 기본적으로 작업 영역이 ID 페더레이션에 사용하도록 설정된 경우 비활성화할 수 없습니다. 자세한 내용은 Unity 카탈로그 자동 사용을 참조하세요.

ID 페더레이션을 사용하면 각 작업 영역에서 별도로 구성을 반복하는 대신 계정 콘솔에서 Azure Databricks 사용자, 서비스 주체 및 그룹을 한 번에 구성할 수 있습니다. 이렇게 하면 새 팀을 Azure Databricks에 온보딩할 때 발생하는 마찰이 줄어들고, 각 작업 영역에 별도의 SCIM 프로비전 애플리케이션을 유지하는 대신 Microsoft Entra ID를 사용하여 Azure Databricks 계정에 하나의 SCIM 프로비전 애플리케이션을 유지할 수 있습니다. 사용자, 서비스 주체 및 그룹이 계정에 추가되면 작업 영역에 대한 권한을 할당할 수 있습니다. ID 페더레이션에 사용하도록 설정된 작업 영역에만 계정 수준 ID 액세스를 할당할 수 있습니다.

계정 수준 ID 다이어그램

작업 영역에 ID 페더레이션을 사용하도록 설정하려면 관리자가 작업 영역에서 ID 페더레이션을 사용하도록 설정하려면 어떻게 해야 할까요?를 참조하세요. 할당이 완료되면 계정 콘솔의 작업 영역 구성 탭에서 ID 페더레이션이 사용으로 표시됩니다.

ID 페더레이션은 작업 영역 수준에서 사용하도록 설정되며 ID 페더레이션 및 비 ID 페더레이션 작업 영역의 조합을 사용할 수 있습니다. ID 페더레이션이 사용하도록 설정되지 않은 작업 영역의 경우 작업 영역 관리자가 작업 영역 사용자, 서비스 주체 및 그룹 전체를 작업 영역의 범위 내에서 관리합니다(레거시 모델). 계정 콘솔 또는 계정 수준 API를 사용하여 계정의 사용자를 이러한 작업 영역에 할당할 수는 없지만, 작업 영역 수준 인터페이스를 사용할 수는 있습니다. 작업 영역 수준 인터페이스를 사용하여 새 사용자 또는 서비스 주체를 작업 영역에 추가할 때마다 해당 사용자 또는 서비스 주체가 계정 수준으로 동기화됩니다. 이를 통해 계정에 하나의 일관된 사용자 및 서비스 주체 집합을 가질 수 있습니다.

그러나 작업 영역 수준 인터페이스를 사용하여 비 ID 페더레이션 작업 영역에 그룹을 추가할 경우 해당 그룹은 작업 영역 로컬 그룹이며 계정에 추가되지 않습니다. 작업 영역 로컬 그룹 대신 계정 그룹을 사용하는 것을 목표로 해야 합니다. 작업 영역 로컬 그룹에는 Unity Catalog의 액세스 제어 정책 또는 다른 작업 영역에 대한 권한을 부여할 수 없습니다.

ID 페더레이션으로 업그레이드

기존 작업 영역에서 ID 페더레이션을 사용하도록 설정하는 경우 다음을 수행합니다.

  1. 계정 수준으로 작업 영역 수준 SCIM 프로비저닝 마이그레이션

    작업 영역에 대해 작업 영역 수준 SCIM 프로비전이 설정되어 있는 경우 계정 수준 SCIM 프로비전을 설정하고 작업 영역 수준 SCIM 프로비전을 꺼야 합니다. 작업 영역 수준 SCIM은 계속해서 작업 영역 로컬 그룹을 만들고 업데이트합니다. Unity Catalog를 사용하여 중앙 집중식 작업 영역 할당 및 데이터 액세스 관리를 활용하려면 작업 영역 로컬 그룹 대신 계정 그룹을 사용하는 것이 좋습니다. 또한 작업 영역 수준 SCIM은 ID 페더레이션 작업 영역에 할당된 계정 그룹을 인식하지 못하며, 계정 그룹을 포함하는 경우 작업 영역 수준 SCIM API 호출이 실패합니다. 작업 영역 수준 SCIM을 사용하지 않도록 설정하는 방법에 대한 자세한 내용은 작업 영역 수준 SCIM 프로비전을 계정 수준으로 마이그레이션을 참조하세요.

  2. 작업 영역 로컬 그룹을 계정 그룹으로 변환

    기존 작업 영역 로컬 그룹을 계정 그룹으로 변환하는 것이 좋습니다. 자세한 내용은 작업 영역 로컬 그룹을 계정 그룹으로 마이그레이션을 참조하세요.

그룹 작업 영역 권한 할당

이제 작업 영역에서 ID 페더레이션을 사용하도록 설정했으므로 해당 작업 영역에 대한 계정 권한의 사용자, 서비스 주체 및 그룹을 할당할 수 있습니다. Databricks에서는 작업 영역 권한을 사용자에게 개별적으로 할당하는 대신 그룹에 작업 영역 권한을 할당하는 것이 좋습니다. 모든 Azure Databricks ID는 그룹의 구성원으로 할당될 수 있으며 구성원은 해당 그룹에 할당된 권한을 상속합니다.

작업 영역 권한 추가

자세한 정보