애플리케이션에 대한 그룹 및 팀 소유자 동의 구성

이 문서에서는 그룹 및 팀 소유자가 애플리케이션에 동의하는 방식을 구성하는 방법과 향후 모든 그룹 및 팀 소유자의 애플리케이션 동의 작업을 사용하지 않도록 설정하는 방법을 알아봅니다.

그룹 및 팀 소유자는 타사 공급업체에서 게시한 애플리케이션과 같은 애플리케이션에 권한을 부여하여 그룹과 연결된 조직의 데이터에 액세스하도록 할 수 있습니다. 예를 들어 Microsoft 팀 소유자는 앱이 팀의 모든 팀 메시지를 읽거나 그룹 멤버의 기본 프로필을 나열하도록 허용할 수 있습니다. 자세히 알아보려면 Microsoft Teams의 리소스 관련 동의를 참조하세요.

그룹 소유자 동의는 Microsoft Entra 관리 센터와 앱 동의 정책 만들기를 통해 두 가지 방법으로 관리할 수 있습니다. Microsoft Entra 관리 센터에서는 모든 그룹 소유자를 사용하도록 설정하거나, 선택한 그룹 소유자를 사용하도록 설정하거나, 그룹 소유자의 애플리케이션 동의 기능을 사용하지 않도록 설정할 수 있습니다. 반면, 앱 동의 정책을 사용하면 애플리케이션에 대한 그룹 소유자 동의를 관리하는 앱 동의 정책을 지정할 수 있습니다. 그런 다음 Microsoft 기본 제공 정책을 할당하거나 고유한 사용자 지정 정책을 만들어 그룹 소유자에 대한 동의 프로세스를 효과적으로 관리할 수 있는 유연성을 갖게 됩니다.

그룹 소유자 동의를 관리하기 위해 앱 동의 정책을 만들기 전에 Microsoft Entra 관리 센터를 통해 그룹 소유자 동의 설정을 사용하지 않도록 설정해야 합니다. 이 설정을 사용하지 않도록 설정하면 앱 동의 정책에 따라 그룹 소유자 동의가 허용됩니다. 이 문서에서는 다양한 방법으로 그룹 소유자 동의 설정을 사용하지 않도록 설정하는 방법을 알아볼 수 있습니다. 사용자의 필요에 맞는 앱 동의 정책을 통해 그룹 소유자 동의를 관리하는 방법에 대해 자세히 알아봅니다.

필수 조건

그룹 및 팀 소유자 동의를 구성하려면 다음이 필요합니다.

  • 사용자 계정. 계정이 아직 없는 경우 체험 계정을 만들 수 있습니다.
  • 전역 관리자 역할.

앱이 그룹 또는 팀의 데이터에 액세스하는 데 동의할 수 있는 사용자를 구성하거나 모든 사용자에 대해 설정을 사용하지 않도록 설정할 수 있습니다.

이 문서의 단계는 시작하는 포털에 따라 약간 다를 수 있습니다.

Microsoft Entra 관리 센터를 통해 그룹 및 팀 소유자 동의 설정을 구성하려면 다음을 수행합니다.

그룹 데이터에 액세스하는 앱에 대한 그룹 소유자의 동의를 관리하려면 다음 단계를 따르세요.

  1. 전역 관리자Microsoft Entra 관리 센터에 로그인합니다.
  2. ID>애플리케이션>엔터프라이즈 애플리케이션>동의 및 권한>사용자 동의 설정으로 이동합니다.
  3. 데이터에 액세스하는 앱에 대한 그룹 소유자 동의 아래에서 사용하도록 설정하려는 옵션을 선택합니다.
  4. 저장을 선택하여 설정을 저장합니다.

이 예제에서 모든 그룹 소유자는 해당 그룹의 데이터에 액세스하는 앱에 동의할 수 있습니다.

Group owner consent settings

Microsoft Graph PowerShell 모듈을 사용하면 그룹 소유자가 자신이 소유한 그룹의 조직 데이터에 액세스하는 애플리케이션에 동의하는 기능을 사용하거나 사용하지 않도록 설정할 수 있습니다. 이 섹션의 cmdlet은 Microsoft.Graph.Identity.SignIns 모듈의 일부입니다.

Microsoft Graph PowerShell에 연결하고 전역 관리자로 로그인합니다. 현재 사용자 동의 설정을 읽으려면 Policy.Read.All 권한을 사용합니다. 사용자 동의 설정을 읽고 변경하려면 Policy.ReadWrite.Authorization 권한을 사용합니다.

  1. Select-MgProfile 명령을 사용하여 프로필을 베타로 변경합니다.

    Select-MgProfile -Name "beta"
    
  2. 최소 권한 사용

    Connect-MgGraph -Scopes "Policy.ReadWrite.Authorization"
    
    # If you need to create a new setting based on the templates, please use this permission
    Connect-MgGraph -Scopes "Directory.ReadWrite.All"
    

Microsoft Graph PowerShell을 사용하여 현재 설정 검색

테넌트에서 동의 정책 설정 디렉터리 설정의 현재 값을 검색합니다. 그러기 위해서는 이 기능의 디렉터리 설정이 생성되었는지 확인하고, 생성되지 않았다면 해당하는 디렉터리 설정 템플릿의 값을 사용해야 합니다.

$consentSettingsTemplateId = "dffd5d46-495d-40a9-8e21-954ff55e198a" # Consent Policy Settings
$settings = Get-MgDirectorySetting | ?{ $_.TemplateId -eq $consentSettingsTemplateId }

if (-not $settings) {
    $template = Get-MgDirectorySettingTemplate -DirectorySettingTemplateId $consentSettingsTemplateId
    $body = @{
                "templateId" = $template.Id
                "values" = @(
                    @{
                        "name" = "EnableGroupSpecificConsent"
                        "value" = $true
                    },
                    @{
                        "name" = "BlockUserConsentForRiskyApps"
                        "value" = $true
                    },
                    @{
                        "name" = "EnableAdminConsentRequests"
                        "value" = $true
                    },
                    @{
                        "name" = "ConstrainGroupSpecificConsentToMembersOfGroupId"
                        "value" = ""
                    }
                )
    }
    $settings = New-MgDirectorySetting -BodyParameter $body
}

$enabledValue = $settings.Values | ? { $_.Name -eq "EnableGroupSpecificConsent" }
$limitedToValue = $settings.Values | ? { $_.Name -eq "ConstrainGroupSpecificConsentToMembersOfGroupId" }

Microsoft Graph PowerShell의 설정 값 이해

앱에서 해당 그룹의 데이터에 액세스하도록 허용할 수 있는 사용자를 정의하는 두 가지 설정 값이 있습니다.

설정 Type 설명
EnableGroupSpecificConsent 부울 그룹 소유자가 그룹 관련 권한을 부여할 수 있는지 여부를 나타내는 플래그입니다.
ConstrainGroupSpecificConsentToMembersOfGroupId GUID EnableGroupSpecificConsent를 "True"로 설정하고 이 값을 그룹의 개체 ID로 설정하면 식별된 그룹의 멤버가 자신이 소유한 그룹에 대한 그룹 관련 권한을 부여할 수 있습니다.

Microsoft Graph PowerShell을 사용하여 원하는 구성에 대한 설정 값 업데이트

# Disable group-specific consent entirely
$enabledValue.Value = "false"
$limitedToValue.Value = ""
# Enable group-specific consent for all users
$enabledValue.Value = "true"
$limitedToValue.Value = ""
# Enable group-specific consent for users in a given group
$enabledValue.Value = "true"
$limitedToValue.Value = "{group-object-id}"

Microsoft Graph PowerShell을 사용하여 설정 저장


```powershell
# Update an existing directory settings
Update-MgDirectorySetting -DirectorySettingId $settings.Id -Values $settings.Values

Graph 탐색기를 사용하여 디렉터리 설정을 통해 그룹 및 팀 소유자 동의 설정을 관리하려면 다음 단계를 따릅니다.

전역 관리자로 로그인해야 합니다. 현재 사용자 동의 설정을 읽으려면 Policy.Read.All 권한에 동의합니다. 사용자 동의 설정을 읽고 변경하려면 Policy.ReadWrite.Authorization 권한에 동의합니다.

Microsoft Graph API를 사용하여 현재 설정 검색

테넌트에서 Microsoft Entra 관리 센터의 동의 정책 설정의 대한 현재 값을 검색합니다. 이를 위해서는 이 기능에 대한 디렉터리 설정이 만들어졌는지 확인하고, 그렇지 않은 경우 두 번째 Microsoft Graph 호출을 사용하여 해당 디렉터리 설정을 만들어야 합니다.

GET https://graph.microsoft.com/beta/settings

응답

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#settings",
    "value": [
        {
            "id": "{ directorySettingId }",
            "displayName": "Consent Policy Settings",
            "templateId": "dffd5d46-495d-40a9-8e21-954ff55e198a",
            "values": [
            {
                    "name": "EnableGroupSpecificConsent",
                    "value": "true"
                },
                {
                    "name": "BlockUserConsentForRiskyApps",
                    "value": "true"
                },
                {
                    "name": "EnableAdminConsentRequests",
                    "value": "true"
                },
                {
                    "name": "ConstrainGroupSpecificConsentToMembersOfGroupId",
                    "value": ""
                }
            ]
        }
    ]
}

value가 비어 있으면 해당 디렉터리 설정을 만듭니다(아래 예 참조).

GET https://graph.microsoft.com/beta/settings

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#settings",
    "value": []
}
POST https://graph.microsoft.com/beta/settings
{
    "templateId": "dffd5d46-495d-40a9-8e21-954ff55e198a",
    "values": [
        {
            "name": "EnableGroupSpecificConsent",
            "value": "true"
        },
        {
            "name": "BlockUserConsentForRiskyApps",
            "value": "true"
        },
        {
            "name": "EnableAdminConsentRequests",
            "value": "true"
        },
        {
            "name": "ConstrainGroupSpecificConsentToMembersOfGroupId",
            "value": ""
        }
    ]
}

Microsoft Graph API의 설정 값 이해

앱에서 해당 그룹의 데이터에 액세스하도록 허용할 수 있는 사용자를 정의하는 두 가지 설정 값이 있습니다.

설정 Type 설명
EnableGroupSpecificConsent 부울 그룹 소유자가 그룹 관련 권한을 부여할 수 있는지 여부를 나타내는 플래그입니다.
ConstrainGroupSpecificConsentToMembersOfGroupId GUID EnableGroupSpecificConsent를 "True"로 설정하고 이 값을 그룹의 개체 ID로 설정하면 식별된 그룹의 멤버가 자신이 소유한 그룹에 대한 그룹 관련 권한을 부여할 수 있습니다.

Microsoft Graph API를 사용하여 원하는 구성에 대한 설정 값 업데이트

현재 설정을 검색할 때 {directorySettingId}value 컬렉션의 실제 ID로 바꿉니다.

그룹별 동의를 완전히 사용하지 않도록 설정합니다.

PATCH https://graph.microsoft.com/beta/settings/{directorySettingId}
{
    "values": [
        {
            "name": "EnableGroupSpecificConsent",
            "value": "false"
        },
        {
            "name": "BlockUserConsentForRiskyApps",
            "value": "true"
        },
        {
            "name": "EnableAdminConsentRequests",
            "value": "true"
        },
        {
            "name": "ConstrainGroupSpecificConsentToMembersOfGroupId",
            "value": ""
        }
    ]
}

모든 사용자에 대해 그룹별 동의 사용

PATCH https://graph.microsoft.com/beta/settings/{directorySettingId}
{
    "values": [
        {
            "name": "EnableGroupSpecificConsent",
            "value": "true"
        },
        {
            "name": "BlockUserConsentForRiskyApps",
            "value": "true"
        },
        {
            "name": "EnableAdminConsentRequests",
            "value": "true"
        },
        {
            "name": "ConstrainGroupSpecificConsentToMembersOfGroupId",
            "value": ""
        }
    ]
}

특정 그룹의 사용자에 대한 그룹별 동의 사용

PATCH https://graph.microsoft.com/beta/settings/{directorySettingId}
{
    "values": [
        {
            "name": "EnableGroupSpecificConsent",
            "value": "true"
        },
        {
            "name": "BlockUserConsentForRiskyApps",
            "value": "true"
        },
        {
            "name": "EnableAdminConsentRequests",
            "value": "true"
        },
        {
            "name": "ConstrainGroupSpecificConsentToMembersOfGroupId",
            "value": "{group-object-id}"
        }
    ]
}

참고 항목

사용자를 대신하여 회사 데이터에 액세스하는 앱에 동의할 수 있습니다. 설정을 끄면 사용자가 소유한 그룹의 회사 데이터에 액세스하는 앱에 동의할 수 있습니다. 옵션을 사용하지 않도록 설정합니다.

앱 동의 정책을 통해 앱이 그룹 또는 팀의 데이터에 액세스하는 데 동의할 수 있는 사용자를 구성할 수 있습니다. 앱 동의 정책에 따라 그룹 소유자 동의를 허용하려면 그룹 소유자 동의 설정을 사용하지 않도록 설정해야 합니다. 사용하지 않도록 설정되면 앱 동의 정책에서 현재 정책을 읽습니다.

애플리케이션에 대한 사용자 동의를 제어하는 앱 동의 정책을 선택하려면 최신 Microsoft Graph PowerShell 모듈을 사용할 수 있습니다. 여기에 사용되는 cmdlet은 Microsoft.Graph.Identity.SignIns 모듈에 포함되어 있습니다.

필요한 최소 권한을 사용하여 Microsoft Graph PowerShell에 연결합니다. 현재의 사용자 동의 설정을 읽으려면 Policy.Read.All을(를) 사용합니다. 사용자 동의 설정을 읽고 변경하려면 Policy.ReadWrite.Authorization을(를) 사용합니다. 전역 관리자로 로그인해야 합니다.

# change the profile to beta by using the `Select-MgProfile` command
Select-MgProfile -Name "beta".
Connect-MgGraph -Scopes "Policy.ReadWrite.Authorization"
  1. ManagePermissionGrantPoliciesForOwnedResource의 범위가 group에 있는지 확인합니다.

    1. 그룹 소유자 동의 설정의 현재 값을 검색합니다.

        Get-MgPolicyAuthorizationPolicy | select -ExpandProperty DefaultUserRolePermissions | ft PermissionGrantPoliciesAssigned
      

    PermissionGrantPoliciesAssigned에서 ManagePermissionGrantPoliciesForOwnedResource가 반환되면 그룹 소유자 동의 설정으로 앱 동의 정책이 적용되었을 수 있습니다.

    1. 정책 범위가 group인지 확인합니다.

        Get-MgPolicyPermissionGrantPolicy -PermissionGrantPolicyId {"microsoft-all-application-permissions-for-group"} | ft AdditionalProperties
      

      resourceScopeType == group인 경우 그룹 소유자 동의 설정으로 앱 동의 정책이 적용되었습니다.

  2. 앱 동의 정책을 활용하기 위한 그룹 소유자 동의를 사용하지 않도록 설정하려면 동의 정책(PermissionGrantPoliciesAssigned)에 현재 ManagePermissionGrantsForSelf.* 정책과 컬렉션을 업데이트하는 동안 그룹에 적용할 수 없는 기타 현재 ManagePermissionGrantsForOwnedResource.* 정책이 포함되어 있는지 확인합니다. 그러면 사용자 동의 설정 및 기타 리소스 동의 설정에 대한 현재 구성을 유지할 수 있습니다.

    # only exclude policies that are scoped in group
    $body = @{
        "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
            "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
            "managePermissionGrantsForOwnedResource.{other-policies-that-are-not-applicable-to-groups}" 
        )
    }
    Update-MgPolicyAuthorizationPolicy -AuthorizationPolicyId authorizationPolicy -BodyParameter $body
    
    

앱 동의 정책에 따라 그룹 소유자 동의를 허용하려면 앱에 동의를 부여하기 위해 그룹 소유자의 권한 부여를 관리해야 하는 앱 동의 정책을 선택합니다. 컬렉션을 업데이트하는 동안 동의 정책(PermissionGrantPoliciesAssigned)에 현재 ManagePermissionGrantsForSelf.* 정책과 기타 ManagePermissionGrantsForOwnedResource.* 정책이 포함되어 있는지 확인합니다. 그러면 사용자 동의 설정 및 기타 리소스 동의 설정에 대한 현재 구성을 유지할 수 있습니다.

$body = @{
    "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
        "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
        "managePermissionGrantsForOwnedResource.{other-policies-that-are-not-applicable-to-groups}",
        "managePermissionGrantsForOwnedResource.{app-consent-policy-id-for-group}" #new app consent policy for groups
    )
}
Update-MgPolicyAuthorizationPolicy -AuthorizationPolicyId authorizationPolicy -BodyParameter $body

{app-consent-policy-id-for-group}를 적용할 정책의 ID로 바꿉니다. 만든 사용자 지정 앱 동의 정책을 선택하거나 다음 기본 제공 정책 중에서 선택할 수 있습니다.

ID 설명
microsoft-pre-approval-apps-for-group 사전 승인된 앱에만 그룹 소유자 동의 허용
자신이 소유한 그룹의 관리자가 사전 승인한 앱에 대해서만 그룹 소유자 동의를 허용합니다.
microsoft-all-application-permissions-for-group 앱에 대한 그룹 소유자 동의 허용
이 옵션을 사용하면 모든 그룹 소유자는 자신이 소유한 그룹에 대해 모든 애플리케이션에 대해 관리자 동의가 필요하지 않은 모든 권한에 동의할 수 있습니다. 그룹 리소스별 동의에 대한 권한 부여 사전 승인 정책에 따라 사전 승인된 앱이 포함됩니다.

예를 들어, 기본 제공 정책 microsoft-all-application-permissions-for-group에 따라 그룹 소유자 동의를 사용하도록 설정하려면 다음 명령을 실행합니다.

$body = @{
    "permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
        "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
        "managePermissionGrantsForOwnedResource.{all-policies-that-are-not-applicable-to-groups}",
        "managePermissionGrantsForOwnedResource.{microsoft-all-application-permissions-for-group}" # policy that is be scoped to group
    )
}
Update-MgPolicyAuthorizationPolicy -AuthorizationPolicyId authorizationPolicy -BodyParameter $body

Graph 탐색기를 사용하여 자신이 소유한 그룹의 조직 데이터에 액세스하는 애플리케이션에 동의하는 사용자 동의 그룹 소유자의 권한을 제어하는 그룹 소유자 동의 정책을 선택합니다.

  1. ManagePermissionGrantPoliciesForOwnedResource의 범위가 group에 있는지 확인합니다.

    1. 그룹 소유자 동의 설정의 현재 값을 검색합니다.
    GET https://graph.microsoft.com/v1.0/policies/authorizationPolicy
    

    ManagePermissionGrantsForOwnedResourcepermissionGrantPolicyIdsAssignedToDefaultUserRole에서 반환된 경우 그룹 소유자 동의 설정이 앱 동의 정책이 적용되었을 수 있습니다.

    2.정책 범위가 group인지 확인합니다.

    GET https://graph.microsoft.com/beta/policies/permissionGrantPolicies/{microsoft-all-application-permissions-for-group}
    

    resourceScopeType == group인 경우 그룹 소유자 동의 설정에 앱 동의 정책이 적용됩니다.

  2. 앱 동의 정책을 활용하기 위한 그룹 소유자 동의를 사용하지 않도록 설정하려면 동의 정책(PermissionGrantPoliciesAssigned)에 현재 ManagePermissionGrantsForSelf.* 정책과 그룹에 적용할 수 없는 기타 현재 ManagePermissionGrantsForOwnedResource.* 정책이 포함되어 있는지 확인합니다. 그러면 사용자 동의 설정 및 기타 리소스 동의 설정에 대한 현재 구성을 유지할 수 있습니다.

    PATCH https://graph.microsoft.com/beta/policies/authorizationPolicy
    {
        "defaultUserRolePermissions": {
            "permissionGrantPoliciesAssigned": [
                "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
                "managePermissionGrantsForOwnedResource.{other-policies-that-are-not-applicable-to-groups}"
             ]
         }
     }
    

앱 동의 정책에 따라 그룹 소유자 동의를 허용하려면 앱에 동의를 부여하기 위해 그룹 소유자의 권한 부여를 관리해야 하는 앱 동의 정책을 선택합니다. 컬렉션을 업데이트하는 동안 동의 정책(PermissionGrantPoliciesAssigned)에 현재 ManagePermissionGrantsForSelf.* 정책과 기타 현재 ManagePermissionGrantsForOwnedResource.* 정책이 포함되어 있는지 확인합니다. 그러면 사용자 동의 설정 및 기타 리소스 동의 설정에 대한 현재 구성을 유지할 수 있습니다.

PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy

{
    "defaultUserRolePermissions": {
        "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
        "managePermissionGrantsForOwnedResource.{other-policies-that-are-not-applicable-to-groups}",
        "managePermissionGrantsForOwnedResource.{app-consent-policy-id-for-group}"
   }
}

{app-consent-policy-id-for-group}을 그룹에 적용하려는 정책의 ID로 바꿉니다. 만든 그룹용 사용자 지정 앱 동의 정책을 선택하거나 다음 기본 제공 정책 중에서 선택할 수 있습니다.

ID 설명
microsoft-pre-approval-apps-for-group 사전 승인된 앱에만 그룹 소유자 동의 허용
자신이 소유한 그룹의 관리자가 사전 승인한 앱에 대해서만 그룹 소유자 동의를 허용합니다.
microsoft-all-application-permissions-for-group 앱에 대한 그룹 소유자 동의 허용
이 옵션을 사용하면 모든 그룹 소유자는 자신이 소유한 그룹에 대해 모든 애플리케이션에 대해 관리자 동의가 필요하지 않은 모든 권한에 동의할 수 있습니다. 그룹 리소스별 동의에 대한 권한 부여 사전 승인 정책에 따라 사전 승인된 앱이 포함됩니다.

예를 들어, 기본 제공 정책 microsoft-pre-approval-apps-for-group에 따라 그룹 소유자 동의를 사용하도록 설정하려면 다음 PATCH 명령을 사용합니다.

PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy

{
    "defaultUserRolePermissions": {
        "permissionGrantPoliciesAssigned": [
            "managePermissionGrantsForSelf.{current-policy-for-user-consent}",
            "managePermissionGrantsForOwnedResource.{other-policies-that-are-not-applicable-to-groups}",
            "managePermissionGrantsForOwnedResource.microsoft-pre-approval-apps-for-group"
        ]
    }
}

다음 단계

도움말을 얻거나 질문에 대한 답변을 찾으려면 다음을 수행합니다.