Actualice la plantilla de directiva de acceso entre inquilinos con la configuración de sincronización de usuarios para una organización multiinquilino.
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso
Permisos con privilegios mínimos
Permisos con privilegios más altos
Delegado (cuenta profesional o educativa)
Policy.ReadWrite.CrossTenantAccess
No disponible.
Delegado (cuenta personal de Microsoft)
No admitida.
No admitida.
Aplicación
Policy.ReadWrite.CrossTenantAccess
No disponible.
En escenarios delegados con cuentas profesionales o educativas, al usuario que ha iniciado sesión se le debe asignar un rol de Microsoft Entra compatible o un rol personalizado con un permiso de rol admitido.
Administrador de seguridad es el rol con privilegios mínimos admitido para esta operación.
En el cuerpo de la solicitud, proporcione solo los valores de las propiedades que se van a actualizar. Las propiedades existentes que no se incluyen en el cuerpo de la solicitud mantienen sus valores anteriores o se recalculan en función de los cambios realizados en otros valores de propiedad.
En la tabla siguiente se especifican las propiedades que se pueden actualizar.
Determina si los usuarios se pueden sincronizar desde el inquilino del asociado.
false hace que se detenga cualquier sincronización de usuarios actual del inquilino de origen con el inquilino de destino. Esta propiedad no afecta a los usuarios existentes que ya se han sincronizado.
templateApplicationLevel
templateApplicationLevel
Especifica si la plantilla se aplicará a la configuración de sincronización de usuarios de determinados inquilinos. Los valores posibles son: none, newPartners, existingPartners y unknownFutureValue También puede especificar varios valores como newPartners,existingPartners (valor predeterminado).
none indica que la plantilla no se aplica a ningún inquilino de asociado nuevo o existente.
newPartners indica que la plantilla se aplica a los nuevos inquilinos de asociados.
existingPartners indica que la plantilla se aplica a los inquilinos de asociados existentes, aquellos que ya tenían establecida la configuración de sincronización de usuarios específica del asociado. Opcional.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 204 No Content.
Ejemplos
En el ejemplo siguiente se actualiza la configuración de sincronización de usuarios de la plantilla. Configura que la plantilla se aplica a asociados nuevos y existentes. Para obtener más información, vea crossTenantIdentitySyncPolicyPartner resource type.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new MultiTenantOrganizationIdentitySyncPolicyTemplate
{
TemplateApplicationLevel = TemplateApplicationLevel.NewPartners | TemplateApplicationLevel.ExistingPartners,
UserSyncInbound = new CrossTenantUserSyncInbound
{
IsSyncAllowed = true,
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Policies.CrossTenantAccessPolicy.Templates.MultiTenantOrganizationIdentitySynchronization.PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewMultiTenantOrganizationIdentitySyncPolicyTemplate()
templateApplicationLevel := graphmodels.NEWPARTNERS,EXISTINGPARTNERS_TEMPLATEAPPLICATIONLEVEL
requestBody.SetTemplateApplicationLevel(&templateApplicationLevel)
userSyncInbound := graphmodels.NewCrossTenantUserSyncInbound()
isSyncAllowed := true
userSyncInbound.SetIsSyncAllowed(&isSyncAllowed)
requestBody.SetUserSyncInbound(userSyncInbound)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
multiTenantOrganizationIdentitySynchronization, err := graphClient.Policies().CrossTenantAccessPolicy().Templates().MultiTenantOrganizationIdentitySynchronization().Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
MultiTenantOrganizationIdentitySyncPolicyTemplate multiTenantOrganizationIdentitySyncPolicyTemplate = new MultiTenantOrganizationIdentitySyncPolicyTemplate();
multiTenantOrganizationIdentitySyncPolicyTemplate.setTemplateApplicationLevel(EnumSet.of(TemplateApplicationLevel.NewPartners, TemplateApplicationLevel.ExistingPartners));
CrossTenantUserSyncInbound userSyncInbound = new CrossTenantUserSyncInbound();
userSyncInbound.setIsSyncAllowed(true);
multiTenantOrganizationIdentitySyncPolicyTemplate.setUserSyncInbound(userSyncInbound);
MultiTenantOrganizationIdentitySyncPolicyTemplate result = graphClient.policies().crossTenantAccessPolicy().templates().multiTenantOrganizationIdentitySynchronization().patch(multiTenantOrganizationIdentitySyncPolicyTemplate);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\MultiTenantOrganizationIdentitySyncPolicyTemplate;
use Microsoft\Graph\Generated\Models\TemplateApplicationLevel;
use Microsoft\Graph\Generated\Models\CrossTenantUserSyncInbound;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new MultiTenantOrganizationIdentitySyncPolicyTemplate();
$requestBody->setTemplateApplicationLevel(new TemplateApplicationLevel('newPartners,existingPartners'));
$userSyncInbound = new CrossTenantUserSyncInbound();
$userSyncInbound->setIsSyncAllowed(true);
$requestBody->setUserSyncInbound($userSyncInbound);
$result = $graphServiceClient->policies()->crossTenantAccessPolicy()->templates()->multiTenantOrganizationIdentitySynchronization()->patch($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.multi_tenant_organization_identity_sync_policy_template import MultiTenantOrganizationIdentitySyncPolicyTemplate
from msgraph.generated.models.template_application_level import TemplateApplicationLevel
from msgraph.generated.models.cross_tenant_user_sync_inbound import CrossTenantUserSyncInbound
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = MultiTenantOrganizationIdentitySyncPolicyTemplate(
template_application_level = TemplateApplicationLevel.NewPartners | TemplateApplicationLevel.ExistingPartners,
user_sync_inbound = CrossTenantUserSyncInbound(
is_sync_allowed = True,
),
)
result = await graph_client.policies.cross_tenant_access_policy.templates.multi_tenant_organization_identity_synchronization.patch(request_body)