Compartir a través de


Identidad principal mapi

Hace referencia a: Outlook 2013 | Outlook 2016

La mayoría de las sesiones MAPI tienen un proveedor de servicios determinado que proporciona la identidad principal de la sesión. Normalmente, es un proveedor de libreta de direcciones, que proporciona identidad a través de uno de sus objetos de usuario de mensajería o listas de distribución. De hecho, MAPI recomienda que los servicios de mensajes que incluyen un proveedor de libreta de direcciones usen uno de sus objetos para la identidad principal. Cuando un proveedor de servicios que pertenece a un servicio de mensajes proporciona la identidad principal, todos los demás proveedores de servicios del servicio de mensajes comparten esta identidad.

The MAPISVC. El archivo de configuración INF tiene entradas relacionadas con la identidad tanto en el nivel del servicio de mensajes como del proveedor de servicios. Las secciones del servicio de mensajes deben incluir una entrada que indique si el servicio puede proporcionar o no la identidad principal; Las secciones del proveedor de servicios incluyen una entrada similar solo cuando el proveedor puede proporcionar una identidad.

En la tabla siguiente se enumeran las entradas que aparecen en las secciones del servicio de mensajes y del proveedor de servicios en MAPISVC. Archivo INF.

Proveedor de identidades principal configuración de PR_RESOURCE_FLAGS
Servicio de mensajes
SERVICE_PRIMARY_IDENTITY
No es el servicio de mensajes
SERVICE_NO_PRIMARY_IDENTITY
Proveedor de servicios
STATUS_PRIMARY_IDENTITY

Aunque varios servicios de mensajes pueden declarar su capacidad de proporcionar la identidad principal de una sesión, solo se selecciona un servicio de mensajes para hacerlo. Esta selección puede producirse:

  • Cuando se crea un perfil.

  • Cuando un cliente llama a IMsgServiceAdmin::SetPrimaryIdentity para establecer explícitamente un servicio de mensajes determinado como proveedor de la identidad de sesión. Para obtener más información. Vea IMsgServiceAdmin::SetPrimaryIdentity.

Cuando se crea un perfil, MAPI designa el primer servicio de mensajes que se va a configurar que incluye un proveedor con la marca de STATUS_PRIMARY_IDENTITY establecida en su propiedad PR_RESOURCE_FLAGS (PidTagResourceFlags) para proporcionar la identidad principal. Dentro del servicio de mensajes designado, se elige el primer proveedor que se va a configurar con este conjunto de marcas de recursos para proporcionar la identidad del servicio. La marca de STATUS_PRIMARY_IDENTITY se borra para todos los demás proveedores del servicio designado y otros servicios de mensajes del perfil. Si en cualquier momento el proveedor que proporciona la identidad principal se quita del perfil, MAPI asigna el rol al siguiente proveedor que se va a configurar y que puede proporcionar identidad. Esto viene determinado por la apariencia de la PR_RESOURCE_FLAGS=STATUS_PRIMARY_IDENTITY entrada en la sección del proveedor en MAPISVC.INF.

Cuando un cliente llama al método IMsgServiceAdmin::SetPrimaryIdentity de un servicio de mensajes, especifica mapiuid para un proveedor de servicios dentro del servicio de destino. Para obtener más información, vea MAPIUID. El proveedor de servicios representado por MAPIUID se asigna para proporcionar la identidad principal para el servicio de mensajes y para la sesión, y todos los demás proveedores del servicio compartirán esta identidad.

Cada proveedor del servicio de mensajes responsable de proporcionar la identidad principal actualiza su fila en la tabla de estado para incluir las siguientes propiedades.

Propiedad de identidad principal Establecer como
PR_IDENTITY_DISPLAY (PidTagIdentityDisplay)
Nombre para mostrar del objeto que proporciona la identidad principal.
PR_IDENTITY_SEARCH_KEY (PidTagIdentitySearchKey)
Clave de búsqueda del objeto que proporciona la identidad principal.
PR_IDENTITY_ENTRYID (PidTagIdentityEntryId)
Identificador de entrada del objeto que proporciona la identidad principal.

Para recuperar el identificador de entrada del objeto que proporciona la identidad principal

  • Llame al método IMAPISession::QueryIdentity . Para obtener más información, vea IMAPISession::QueryIdentity. QueryIdentity busca en la tabla de estado la fila que contiene el valor STATUS_PRIMARY_IDENTITY en su columna PR_RESOURCE_FLAGS y devuelve el PR_IDENTITY_ENTRYID correspondiente como identificador de entrada para la identidad principal.