Compartir a través de


Usar constructores CrmServiceClient para conectarse a Dynamics 365

 

Publicado: enero de 2017

Se aplica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Para conectarse a Microsoft Dynamics 365, cree una instancia de la clase CrmServiceClient y después use uno de los constructores para conectarse. Todas las llamadas a Dynamics 365 que usan la clase CrmServiceClient son seguras para el hilo.

Aparte de los constructores mencionados en este tema, también puede usar cadenas de conexión con CrmServiceClient para conectarse Dynamics 365.Más información:Usar cadenas de conexión en útiles de XRM para conectarse a Dynamics 365

En este tema

Conexión a Dynamics 365 mediante OrganizationServiceProxy

Conexión a Dynamics 365 mediante OrganizationWebProxyClient

Conectar a Dynamics 365 (online) (Office 365)

Conectarse a Dynamics 365 (online) (Office 365) mediante OAuth

Conexión a Dynamics 365 local (Active Directory)

Conectarse a una implementación de conexión a Internet (IFD) de Dynamics 365

Conectarse a una implementación de conexión a Internet (IFD) de Dynamics 365 usando OAuth

Conexión a Dynamics 365 (basada en notificaciones)

Determinación del estado de la conexión

Conexión a Dynamics 365 mediante OrganizationServiceProxy

Use el siguiente constructor para conectarse a Dynamics 365 mediante la instancia de OrganizationServiceProxy proporcionada por el usuario.

CrmServiceClient crmSvc = new CrmServiceClient(<orgServiceProxy>);

Conexión a Dynamics 365 mediante OrganizationWebProxyClient

Use el siguiente constructor para conectarse a Dynamics 365 mediante la instancia de OrganizationWebProxyClient proporcionada por el usuario. Se muestran en este constructor en Microsoft Dynamics 365 (en línea y local).

CrmServiceClient crmSvc = new CrmServiceClient(<orgWebProxyClient>);

Conectar a Dynamics 365 (online) (Office 365)

Use el siguiente constructor para conectarse a la instancia de Dynamics 365 (online) en Office 365.

CrmServiceClient crmSvc = new CrmServiceClient("<UserName>", CrmServiceClient.MakeSecureString("<Password>"), "<CrmRegion>", "<OrgName>", useUniqueInstance:false, useSsl:false, <orgDetail>, isOffice365:true);

Los valores válidos para el parámetro <CrmRegion> son: NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND y NorthAmerica2. Si lo establece en String.Empty, buscará los servidores de todas las regiones de la organización de Dynamics 365. Para el parámetro <OrgName>, puede especificar el nombre único o el nombre descriptivo.

Los parámetros de los siguientes son opcionales: useUniqueInstance, useSsl, y orgDetail.

Conectarse a Dynamics 365 (online) (Office 365) mediante OAuth

Use el siguiente constructor para utilizar el protocolo OAuth para conectarse a la instancia de Dynamics 365 (online) en Office 365. La compatibilidad con OAuth se introdujo en Microsoft Dynamics 365 (en línea y local).

CrmServiceClient crmSvc = new CrmServiceClient("<UserName>", CrmServiceClient.MakeSecureString("<Password>"), "<CrmRegion>", "<OrgName>", useUniqueInstance:false, <orgDetail>,
                  <userIdentifier>, <clientId>, <redirectUri>, <tokenCachePath>, <externalOrgWebProxyClient>, PromptBehavior.Auto);

Este constructor usa Biblioteca de autenticación de Active Directory de Microsoft Azure (ADAL) para autenticar usuarios. Si las credenciales de usuario (nombre de usuario y contraseña) no se especifican, ADAL le pide al usuario que proporcione las credenciales en función del parámetro PromptBehavior (opcional) especificado en este constructor. ADAL autentica las credenciales mediante el protocolo OAuth, obtiene los tokens de acceso y actualización de Azure Active Directory, y después usa el token de acceso para hacer solicitudes a Dynamics 365.

Los valores válidos para el parámetro <CrmRegion> son: NorthAmerica, EMEA, APAC, SouthAmerica, Oceania, JPN, CAN, IND y NorthAmerica2. Si lo establece en String.Empty, buscará los servidores de todas las regiones de la organización de Dynamics 365. Para el parámetro <OrgName>, puede especificar el nombre único o el nombre descriptivo.

Conexión a Dynamics 365 local (Active Directory)

Use el siguiente constructor para conectarse a una instancia local con autenticación de Active Directory.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>", “<Domain>”), AuthenticationType.AD, "<Server>", "<Port>", "<OrgName>", useUniqueInstance:false, useSsl:false, <orgDetail>);

Esto ejecutará una autenticación de Active Directory en función del dominio especificado. Para el parámetro <Server>, especifique el nombre de host del servidor de Dynamics 365; por ejemplo: crmtest. Para el parámetro <OrgName>, puede especificar el nombre único o el nombre descriptivo.

Los parámetros de los siguientes son opcionales: useUniqueInstance, useSsl, y orgDetail.

Conectarse a una implementación de conexión a Internet (IFD) de Dynamics 365

Use el siguiente constructor para conectarse a la instancia IFD de Dynamics 365.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>", “<Domain>”), AuthenticationType.IFD, "<Server>", "<Port>", "<OrgName>", useUniqueInstance:false, useSsl:false, <orgDetail>);

Esto ejecutará una autenticación basada en notificaciones en el dominio local especificado. Esto es útil para los clientes que usan AD FS y han configurado el servidor de Dynamics 365 para la autenticación basada en notificaciones, donde la población de usuarios pertenece al mismo dominio de AD FS que el servidor de Dynamics 365. Para el parámetro <Server>, especifique el nombre de host del servidor de Dynamics 365; por ejemplo: crmtest. Para el parámetro <OrgName>, puede especificar el nombre único o el nombre descriptivo.

Los parámetros de los siguientes son opcionales: useUniqueInstance, useSsl, y orgDetail.

Conectarse a una implementación de conexión a Internet (IFD) de Dynamics 365 usando OAuth

Use el siguiente constructor para utilizar el protocolo OAuth en Servicios de federación de Active Directory (AD FS) en Windows Server 2012 R2 para conectarse a una instancia IFD de Dynamics 365. Para que este constructor funcione, el equipo donde está instalado Microsoft Dynamics 365 Server debe haberse configurado para usar AD FS 2.2 como servicio de token de seguridad (STS). La compatibilidad de OAuth para conectarse a una instancia IFD de Dynamics 365 se introdujo en Dynamics 365.

CrmServiceClient crmSvc = new CrmServiceClient("<UserName>", CrmServiceClient.MakeSecureString("<Password>"), "<HomeRealm>", "<HostName>", "<Port>", "<OrgName>", useSsl:true, useUniqueInstance:false, 
                        <orgDetail>, <userIdentifier>, <clientId>, <redirectUri>, <tokenCachePath>, externalOrgWebProxyClient, PromptBehavior.Auto);

Los valores clientId y redirectUri para la aplicación que admite OAuth deben registrarse en el servidor de IFD.

Si las credenciales de usuario (nombre de usuario y contraseña) no se especifican, ADAL le pide al usuario que proporcione las credenciales en función del parámetro PromptBehavior (opcional) especificado en este constructor. ADAL autentica el usuario que usa el token de seguridad de AD FS, y usa el token para realizar acciones en Dynamics 365.

Conexión a Dynamics 365 (basada en notificaciones)

Use el constructor siguiente para usar autenticación basada en notificaciones.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>", “<Domain>”, "<HomeRealm>"),"<Server>", "<Port>", "<OrgName>");

Esto ejecutará una autenticación basada en notificaciones en el dominio de inicio especificado. Esto es útil para los clientes que usan AD FS y han configurado el servidor de Dynamics 365 para la autenticación basada en notificaciones, donde la población de usuarios pertenece al mismo dominio de AD FS que el servidor de Dynamics 365. Para el parámetro <Server>, especifique el nombre de host del servidor de Dynamics 365; por ejemplo: crmtest. Para el parámetro <OrgName>, puede especificar el nombre único o el nombre descriptivo.

Determinación del estado de la conexión

Para determinar si la solicitud de conexión se realizó correctamente, compruebe el valor de la propiedad CrmServiceClient.IsReady. Si es true, la conexión se realizó correctamente y está listo para trabajar. De lo contrario, compruebe los valores de las propiedades CrmServiceClient.LastCrmError y CrmServiceClient.LastCrmException para la causa del error de conexión.

Ver también

AuthenticationType
Usar cadenas de conexión en útiles de XRM para conectarse a Dynamics 365
Usar cmdlets de PowerShell para que las herramientas de XRM se conecten a Dynamics 365
Usar herramientas XRM para ejecutar acciones en Dynamics 365
Ejemplo: Inicio rápido para Microsoft Dynamics 365
Crear aplicaciones cliente de Windows mediante las herramientas XRM

Microsoft Dynamics 365

© 2017 Microsoft. Todos los derechos reservados. Copyright