Usuarios sin licencia para integraciones en Microsoft Dataverse
Usuarios sin licencia para integraciones en Microsoft Dataverse

Usuarios sin licencia para integraciones en Microsoft Dataverse

Que levante la mano el primero que no se ha llevado sin querer (o queriendo) unas credenciales de un cliente en el que ya no estás o quizás has visto las credenciales de un compañero. Esto es un problema de seguridad muy grave que sufren casi todas las organizaciones. Por otra parte en 2019 se anunciaros las limitaciones de llamada de la API. En el mejor de los escenarios tendrás un límite de 20.000 peticiones cada 24 horas y por supuesto en muchos escenarios este límite es insuficiente

En las integraciones o servicios web normalmente almacenamos las credenciales en un web.config o un app.config. Sin embargo, con los usuarios sin licencia tenemos la ventaja de que no tenemos credenciales, sino que tenemos un token (un código alfanumérico o código hash) que nos permite acceder a los datos de Dynamics únicamente vía API. Por supuesto desde nuestra consola podemos decidir revocar el acceso a este token y decidir sobre qué entidades debe acceder.

Además debemos tener en cuenta que los usuarios no licenciados pueden llegar a tener 100.000 peticiones cada 24 horas. Podéis obtener más información aquí.

Dar de alta este usuario es un proceso más complejo que un usuario con licencia sin embargo no es nada complicado y voy a tratar de explicarte cómo en este post. Lo primero que debemos hacer es dirigirnos a nuestro portal de azure y dirigirnos al apartado “Registro de aplicaciones” y vamos a registrar una nueva aplicación:

Elegimos un nombre y registramos la aplicación. Seguidamente, debemos dirigirnos a “Permisos de API” y añadir Common Data Service o Dataverse:

Después de esto, debemos ir a el apartado de “Certificados y secretos” y dar de alta un Secreto de cliente. Debes guardarlo en ese mismo momento porque no podrás copiarlo más adelante. Desde este mismo apartado podrás revocar el acceso a ese secreto si crees que la seguridad de tu organización está comprometida:

Por último para terminar de asignar los permisos debemos dar de alta a el usuario de aplicación. Para ello accedemos a la configuración avanzada de nuestro dynamics:

Vamos al apartado de seguridad -> Usuarios y seleccionamos la vista de “Usuarios de aplicación”:

Creamos un usuario nuevo seleccionando el formulario de usuario de aplicación:

Este formulario nos solicita un nombre de usuario y Id de aplicación. Pues bien, en este id de aplicación debemos introducir el application ID que nos ha generado el registro de aplicación que hemos realizado anteriormente. No te olvides de asignar los roles adecuados a este usuario.

Para conectarte desde un programa de consola debes utilizar el siguiente connection string:

AuthType=ClientSecret;url={URLDYNAMICS};ClientId={YOURAPPLICATIONID};ClientSecret={YOURCLIENTSECRET}

Espero que te haya sido útil!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.