New-ApplicationAccessPolicy

Este cmdlet solo está disponible en el servicio basado en la nube.

Use el cmdlet New-ApplicationAccessPolicy para restringir o denegar el acceso a un conjunto específico de buzones por parte de una aplicación que usa API (REST de Outlook, Microsoft Graph o Exchange Web Services (EWS)). Estas directivas son complementarias a los ámbitos de permisos declarados por la aplicación.

Para obtener más información acerca de los conjuntos de parámetros de la sección Sintaxis a continuación, vea Sintaxis del cmdlet de Exchange.

Nota: Las directivas de acceso a aplicaciones pronto se reemplazarán por Access Control basadas en roles para aplicaciones. Para obtener más información, consulte Access Control basadas en roles para aplicaciones de Exchange.

Syntax

New-ApplicationAccessPolicy
   -AccessRight <ApplicationAccessPolicyRight>
   -AppId <String[]>
   -PolicyScopeGroupId <RecipientIdParameter>
   [-Confirm]
   [-Description <String>]
   [-WhatIf]
   [<CommonParameters>]

Description

Deberá tener asignados permisos antes de poder ejecutar este cmdlet. Aunque en este tema se enumeran todos los parámetros correspondientes a este cmdlet, tal vez no tenga acceso a algunos parámetros si no están incluidos en los permisos que se le han asignado. Para obtener los permisos necesarios para ejecutar cualquier cmdlet o parámetro en su organización, consulte Find the permissions required to run any Exchange cmdlet.

Puede crear un número limitado de directivas en su organización en función de una cantidad fija de espacio. Si su organización se queda sin espacio para estas directivas, verá el error: "El tamaño total de las directivas de acceso a aplicaciones superó el límite". Para maximizar el número de directivas y reducir la cantidad de espacio que consumen las directivas, establezca una descripción de un carácter de espacio para la directiva. Este método permitirá aproximadamente 300 directivas (frente a un límite anterior de 100 directivas).

Aunque el acceso a recursos basado en ámbitos, como Mail.Read o Calendar.Read, es eficaz para asegurarse de que la aplicación solo puede leer correo electrónico o eventos dentro de un buzón y no hacer nada más, las directivas de acceso a la aplicación permiten a los administradores aplicar límites basados en una lista de buzones. Por ejemplo, las aplicaciones desarrolladas para un país no deben tener acceso a datos de otros países. O bien, una aplicación de integración de CRM solo debe tener acceso a calendarios de la organización Sales y a ningún otro departamento.

Todas las solicitudes de API que usan las API REST de Outlook o las API de Microsoft Graph a un buzón de correo de destino realizadas por una aplicación se comprueban mediante las reglas siguientes (en el mismo orden):

  1. Si hay varias directivas de acceso a aplicaciones para el mismo par de buzón de correo de destino y aplicación, la directiva DenyAccess se prioriza sobre una directiva RestrictAccess.
  2. Si existe una directiva DenyAccess para el buzón de aplicación y de destino, se deniega la solicitud de acceso de la aplicación (incluso si existe una directiva RestrictAccess).
  3. Si hay directivas RestrictAccess que coincidan con la aplicación y el buzón de destino, se concede acceso a la aplicación.
  4. Si hay alguna restricción de directivas para la aplicación y el buzón de destino no es miembro de esas directivas, se deniega a la aplicación el acceso al buzón de destino.
  5. Si no se cumple ninguna de las condiciones anteriores, se concede a la aplicación acceso al buzón de destino solicitado.

Ejemplos

Ejemplo 1

New-ApplicationAccessPolicy -AccessRight DenyAccess -AppId "3dbc2ae1-7198-45ed-9f9f-d86ba3ec35b5", "6ac794ca-2697-4137-8754-d2a78ae47d93" -PolicyScopeGroupId "Engineering Staff" -Description "Engineering Group Policy"

En este ejemplo se crea una nueva directiva de acceso a aplicaciones con la siguiente configuración:

  • AccessRight: DenyAccess
  • AppIDs: 3dbc2ae1-7198-45ed-9f9f-d86ba3ec35b5 y 6ac794ca-2697-4137-8754-d2a78ae47d93
  • PolicyScopeGroupId: Personal de ingeniería
  • Descripción: ingeniería directiva de grupo

Ejemplo 2

New-ApplicationAccessPolicy -AccessRight RestrictAccess -AppId "e7e4dbfc-046f-4074-9b3b-2ae8f144f59b" -PolicyScopeGroupId EvenUsers@AppPolicyTest2.com -Description "Restrict this app's access to members of security group EvenUsers."

En este ejemplo se crea una nueva directiva de acceso a aplicaciones con la siguiente configuración:

  • AccessRight: RestrictAccess
  • AppIDs: e7e4dbfc-046f-4074-9b3b-2ae8f144f59b
  • PolicyScopeGroupId: EvenUsers@AppPolicyTest2.com
  • Descripción: restrinja el acceso de esta aplicación a los miembros del grupo de seguridad EvenUsers.

Ejemplo 3

New-ApplicationAccessPolicy -AccessRight DenyAccess -AppId "e7e4dbfc-046f-4074-9b3b-2ae8f144f59b" -PolicyScopeGroupId OddUsers@AppPolicyTest2.com -Description "Deny this app access to members of security group OddUsers."

En este ejemplo se crea una nueva directiva de acceso a aplicaciones con la siguiente configuración:

  • AccessRight: DenyAccess
  • AppIDs: e7e4dbfc-046f-4074-9b3b-2ae8f144f59b
  • PolicyScopeGroupId: OddUsers@AppPolicyTest2.com
  • Descripción: deniega el acceso de esta aplicación a los miembros del grupo de seguridad OddUsers.

Parámetros

-AccessRight

El parámetro AccessRight especifica el tipo de restricción que desea asignar en la directiva de acceso a la aplicación. Los valores admitidos son:

  • RestrictAccess: permite que la aplicación asociada solo acceda a los datos asociados a buzones especificados por el parámetro PolicyScopeGroupID.
  • DenyAccess: permite que la aplicación asociada solo acceda a los datos que no están asociados a buzones especificados por el parámetro PolicyScopeGroupID.
Type:ApplicationAccessPolicyIdParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-AppId

El parámetro Identity especifica el GUID de las aplicaciones que se van a incluir en la directiva. Para buscar el valor GUID de una aplicación, ejecute el comando Get-App | Format-Table -Auto DisplayName,AppId.

Puede especificar varios valores GUID de aplicación separados por comas o puede especificar * para indicar todas las aplicaciones.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-Confirm

El modificador Confirm especifica si se debe mostrar u ocultar el mensaje de confirmación. Cómo afecta este modificador el cmdlet depende de si el cmdlet requiere confirmación antes de continuar.

  • Los cmdlets destructivos (por ejemplo, cmdlets Remove-*) tienen una pausa integrada que obliga a confirmar el comando antes de continuar. Para estos cmdlets, puede omitir el mensaje de confirmación mediante esta sintaxis exacta: -Confirm:$false.
  • La mayoría de los demás cmdlets (por ejemplo, los cmdlets New-* y Set-*) no tienen una pausa integrada. En estos cmdlets, si se especifica el modificador Confirm sin ningún valor, se introduce una pausa que obliga a confirmar el comando antes de continuar.
Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-Description

El parámetro Description especifica una descripción para la directiva. Si el valor contiene espacios, escriba el valor entre comillas (").

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-PolicyScopeGroupID

El parámetro PolicyScopeGroupID especifica el destinatario que se va a definir en la directiva. Los tipos de destinatario válidos son entidades de seguridad en Exchange Online (usuarios o grupos que pueden tener permisos asignados). Por ejemplo:

  • Buzones con cuentas de usuario asociadas (UserMailbox)
  • Usuarios de correo, también conocidos como usuarios habilitados para correo (MailUser)
  • Grupos de seguridad habilitados para correo (MailUniversalSecurityGroup)

Puede usar cualquier valor que identifique de forma exclusiva el destinatario. Por ejemplo:

  • Nombre
  • Nombre
  • Nombre completo (DN)
  • Nombre para mostrar
  • GUID

Para comprobar que un destinatario es una entidad de seguridad, ejecute cualquiera de los siguientes comandos: Get-Recipient -Identity <RecipientIdentity> | Select-Object IsValidSecurityPrincipal o Get-Recipient -ResultSize unlimited | Format-Table -Auto Name,RecipientType,RecipientTypeDetails,IsValidSecurityPrincipal.

No se pueden usar destinatarios que no sean entidades de seguridad con este parámetro. Por ejemplo, los siguientes tipos de destinatarios no funcionarán:

  • Buzones de detección (DiscoveryMailbox)
  • Grupos de distribución dinámica (DynamicDistributionGroup)
  • Grupos de distribución (MailUniversalDistributionGroup)
  • Contactos de correo (MailContact)
  • Carpetas públicas habilitadas para correo (PublicFolder)
  • Grupos de Microsoft 365 (GroupMailbox)
  • Buzones de recursos (RoomMailbox o EquipmentMailbox)
  • Buzones compartidos (SharedMailbox)

Si necesita limitar la directiva a buzones compartidos, puede agregar los buzones compartidos como miembros de un grupo de seguridad habilitado para correo.

Type:RecipientIdParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-WhatIf

El modificador WhatIf simula las acciones del comando. Puede usar este modificador para ver los cambios que se producirían, pero sin aplicar los cambios. No es necesario especificar un valor con este modificador.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection