Descubra una configuración de inquilino Multi-Geo

Cuando se trabaja con un inquilino de SharePoint, debe detectar si es un inquilino Multi-Geo e identificar las ubicaciones geográficas por satélite y de forma predeterminada.

La imagen siguiente muestra a un inquilino Multi-Geo con:

  • Una ubicación geográfica predeterminada en Norteamérica
  • Una ubicación geográfica por satélite en Europa
  • Una ubicación geográfica por satélite en Asia

Mapamundi que muestra la ubicación geográfica predeterminada en América del Norte y las ubicaciones geográficas por satélite en Europa y Asia, con el administrador de inquilino específico por idioma, la raíz y las URL de mi sitio.

Obtenga una información de inquilino Multi-Geo

Dependiendo del escenario, puede usar una o una combinación de las siguientes API para acceder a un sitio de inquilino Multi-Geo:

  • API de CSOM de SharePoint: No compatible con Multi-Geo. Dependiendo del escenario, debe dirigir la ubicación geográfica correcta (por ejemplo, para obtener acceso a un perfil de usuario o realizar operaciones de inquilino API).

  • La API de Microsoft Graph: compatible con Multi-Geo. Le recomendamos que use Microsoft Graph para acceder a los sitios de inquilino Multi-Geo.

  • API de REST de SharePoint: esta API se usa normalmente en el contexto de la dirección URL del sitio y, por lo tanto, si el inquilino es Multi-Geo no es un factor. Algunos escenarios de la API de REST (por ejemplo, los perfiles de usuario o de búsqueda) puede que necesiten realizar llamadas por ubicación geográfica.

Uso de la API de CSOM

Obtener la ubicación geográfica de su inquilino puede hacerse mediante CSOM usando la clase Tenant y el método GetTenantInstances como se muestra en el siguiente fragmento:

Tenant tenant = new Tenant(clientContext);
var tenantInstances = tenant.GetTenantInstances();
clientContext.Load(tenantInstances);
clientContext.ExecuteQuery();

Uso de la API de Microsoft Graph

Puede obtener la información de ubicación geográfica de un inquilino mediante Microsoft Graph. El ejemplo siguiente devuelve una colección de un objeto por ubicación geográfica.

Nota:

El siguiente código de ejemplo usa el dataLocationCode atributo en el siteCollection objeto. En el momento de la publicación, esta propiedad solo está disponible en el punto de conexión de Microsoft Graph beta.

GET https://graph.microsoft.com/beta/sites?filter=siteCollection/root%20ne%20null&select=webUrl,siteCollection

Respuesta de ejemplo de un inquilino Multi-Geo

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#sites",
    "value": [
        {
            "webUrl": "https://contoso.sharepoint.com/",
            "siteCollection": {
                "dataLocationCode":"NAM",
                "hostname": "contoso.sharepoint.com"
            }
        },
        {
            "webUrl": "https://contosoeur.sharepoint.com/",
            "siteCollection": {
                "dataLocationCode":"EUR",
                "hostname": "contosoeur.sharepoint.com"
            }
        },
        {
            "webUrl": "https://contosoapc.sharepoint.com/",
            "siteCollection": {
                "dataLocationCode":"APC",
                "hostname": "contosoapc.sharepoint.com"
            }
        }
    ]
}

Para obtener más información, vea el ejemplo MultiGeo.TenantInformationCollection.

Nota:

Para obtener más información sobre los permisos y cómo configurar su aplicación, vea Configurar una aplicación de ejemplo Multi-Geo.

Descubrir si el inquilino es Multi-Geo

Puede usar Microsoft Graph para detectar si un inquilino es Multi-Geo porque las solicitudes a través de Microsoft Graph de los inquilinos Multi-Geo devuelven más de un elemento de la colección.

El siguiente ejemplo muestra los resultados de una llamada de Microsoft Graph a un inquilino Single-Geo.

GET https://graph.microsoft.com/beta/sites?filter=siteCollection/root%20ne%20null&select=webUrl,siteCollection

Respuesta de ejemplo de un inquilino Single-Geo

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#sites",
    "value": [
        {
            "webUrl": "https://singlegeotest.sharepoint.com/",
            "siteCollection": {
                "dataLocationCode":"",
                "hostname": "singlegeotest.sharepoint.com"
            }
        }
    ]
}

Vea también