Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Sommaire
stylenone

Authentification OAuth 2.0 avec Azure Active Directory

Le protocole OAuth 2,0 est le protocole de l’industrie pour l’autorisation. Il permet à un utilisateur d’accorder un accès limité à ses ressources protégées. Conçu pour fonctionner spécifiquement avec le protocole HTTP (Hypertext Transfer Protocol), OAuth sépare le rôle du client du propriétaire de la ressource. Le client demande l’accès aux ressources contrôlées par le propriétaire de la ressource et hébergées par le serveur de ressources. Le serveur de ressources émet des jetons d’accès avec l’approbation du propriétaire de la ressource. Le client utilise les jetons d’accès pour accéder aux ressources protégées hébergées par le serveur de ressources.

OAuth 2.0 est directement lié à OpenID Connect (OIDC). Étant donné que OIDC est une couche d’authentification et d’autorisation reposant sur OAuth 2.0, il n’est pas compatible avec OAuth 1.0. Azure Active Directory (Azure AD) prend en charge tous les flux OAuth 2.0.

L’authentification Basic prend fin

Chez Microsoft, le début du programme de la fin de l’authentification de base démarre en 2022

...

Dépréciation de l'authentification de base sur Exchange Online

A partir d’Octobre 2022, Microsoft supprime progressivement l’authentification de base pour l’accès aux différents services dont EWS.

Consultez ce lien pour plus d’informations

https://

...

learn.microsoft.com/

...

fr-fr/exchange/clients-

...

and-

...

mobile-

...

in-

...

exchange-online/deprecation-of-

...

basic-

...

authentication-

...

Dont voici un extrait

...

exchange-online

Mettre en

...

œuvre l’authentification OAuth 2.0

Il faut d’abord inscrire l’application sur la plateforme AZURE pour obtenir un client ID et un tenant ID

Dans le saas on n’a besoin que du client ID, car le tenant ID est celui de DIVALTO et il est déjà crée.

...

Remarque

Un runtime Harmony supérieur à 408 Service Pack C (21/10/2022) est requis pour réaliser ces opérations

Avant de commencer, vous devez tout d’abord inscrire une nouvelle application sur la plateforme Azure Active Directory.

...

Vous devez accorder des autorisations supplémentaires à cette application afin que l’application Divalto puisse l’exploiter dans le cadre du protocole EWS.

  • Microsoft Graph

    • EWS.AccessAsUser.All

Depuis cette interface, vous devez également accorder un consentement d’administrateur afin d’appliquer cette autorisation pour l’ensemble des comptes de l’organisation.

...

A rajouter également : Dans Authentification, il faut cocher “Activer les flux mobiles et de bureaux suivants“

...

A noter : le mot de passe est crypté par Harmony avec une clé et un système secret. Il n’est donc jamais envoyé sur le réseau en clair.

Image Added

Il s’agit maintenant de récupérer deux identifiants pour pouvoir les indiquer dans le paramétrage de EWS en mode OAuth :

  • “Client ID” = ID d’application

  • “Tenant ID” = ID de l’annuaire (locataire)

...

Il faut aussi ajouter cette autorisation

...

Récapitulatif des menus Azure

...

La définition de ces valeurs s’effectue dans le programme ‘Administration de EWS en mode OAuth2'

Info

En mode SaaS, le

...

programme de gestion des paramètres est disponible depuis le programme d’Administration Cloud xCloudAdmin (Administration > Paramètres > Cloud > Administration Cloud)

Le choix est disponible depuis le menu ‘Autres paramètres’ puis ‘Administration de EWS en mode OAuth2’

En mode OnPremise ,

...

Image Removed
Image Removed

  

...

l’accès à ces paramètres s’effectue depuis le programme ‘Harmony.dhop' à partir du menu 'Administration’ puis ‘Administration de EWS en mode OAuth2’

...

Le programme de saisie des paramètres techniques (xDivaltoParam) vous permettra d’accéder à la configuration du protocole EWS.

Info

En mode

...

En modeOnPremise, remplissez les deux champs

 

...

Une fois validé, vous pouvez vérifier si le paramétrage de EWS en mode Oauth2 est présent en lançant DivaltoViewer en mode connecté sur votre serveur ou en lançant le choix des paramètres de EWS dans le programme des paramètres techniques.

Il doit y avoir indiqué le mode avec Oauth Azure

Ensuite un bouton « Authentification Azure » existe en mode client léger ou socket (non disponible en model html5) pour la suite des opérations.

...

 

Ensuite, votre administrateur doit inscrire la liste des utilisateurs ayant le droit de se connecter à Exchange Serveur

  • soit METHODE 1 à travers une connexion Oauth pour cette application

  • soit METHODE 2 en demandant à chacun d’activer la demande d’autorisation de la connexion a Exchange Serveur pour cette application

  • soit un mixte des deux méthodes précédentes, vnotamment pour les comptes qui n’appartiennent pas a un utilisateur, comme les comptes servant pour telnet et les services .

...

Pour la METHODE 2 il faut avoir le client léger de la version Harmony 407 au minimum sur son poste et être en mode xwpf.

Info

En client html5 cela n’existe pas car il n’y a pas de connexion possible entre le serveur microsoft Oauth et le navigateur 

En mode XWPF ou dans DivaltoViewer en mode connecté, il faut cliquer sur le bouton “Authentification Azure” et suivre les instructions.

 

Image Removed

Image Removed

Lors de la première connexion, il faut indiquer votre compte windows avec le mot de passe.

Image Removed

Image Removed

 Puis valider la demande d’autorisation de l’application pour qu’elle puisse se connecter sur votre Exchange Serveur avec votre compte .

...

A la fin, Microsoft Azure renvoi l’information si l’autorisation a été validée ou abandonnée.

Image Removed

Image Removed

 

Astuce

Vous pouvez, maintenant, utiliser Divalto pour envoyer des mails , créer des RDV dans le calendrier et ajouter des contacts dans votre compte Exchange Serveur et dans Outlook

 

...

SaaS, la configuration des paramètres de messagerie est disponible depuis le programme de saisie des paramètres techniques (Commun > Paramètres utilisateurs > Saisie des paramètres techniques)

La section ‘Options avancées (Messagerie, Conversion PDF, …) contient le menu 'Protocole Exchange Web Services’

Ces paramètres sont également disponibles par le biais de l’application DivaltoViewer.exe

Vous devez vérifier que le mécanisme d’authentification EWS exploite le mode 'OAuth Azure'

La saisie des paramètres d’identification reste requise en complément de l’authentification de l’application.

...

Astuce

Vous pouvez, maintenant, utiliser Divalto pour envoyer des mails , créer des RDV dans le calendrier et ajouter des contacts dans votre compte Exchange Serveur et dans Outlook

 

Mettre en œuvre l’authentification OAuth 2.0 dans le mode “sans mot de passe”

Remarque

Un runtime Harmony supérieur à 409 Service Pack A (03/03/2023) est requis pour réaliser ces opérations, tant sur le SERVEUR que sur le CLIENT

Info

Les informations suivent concernent les comptes utilisateurs physiques interactifs (pas pour les comptes de services comme pour l’envoi de mail par processus)

Dans ce mode on peut ne plus mettre le nom du compte et le mot de passe dans la gestion exchange serveur .

Exemple dans divaltoviewer.exe en mode connecté au serveur, on a indiqué qu’on utilise exchange serveur mais sur ce compte windows , on peut ne plus mettre le nom et le mode de passe du compte EWS .

Ceci est surtout destiner aux comptes EWS dit ‘sensibles’ et sur lesquels on veut réduire la diffusion du mot de passe.

Il faut donc faire un paramétrage dans Azure en suivant ces instructions, ce qui permettra au final de ne rien mettre dans les champs ci dessous

...

Le bouton Authentification Azure permet de vérifier si cela fonctionne.

Dans ce mode, toutes les 2h, il faut donner a EWS un token valide.

  • Si Divalto connait le compte et le mot de passe, le nouveau token est re-demandé automatiquement à Azure sans intervention de l’utilisateur.

  • Par contre si divalto ne connait pas le compte et/ou le mot de passe, il va alors demander a Azure une demande de connexion de l’utilisateur a son compte EWS en mode XWPF .Azure affiche cette boite de dialogue, invitant l’utilisateur à indiquer son compte Microsoft et son mot de passe .

...

Ceci permet a Azure de renvoyer un token a Divalto pour pouvoir continuer a envoyer des mails et travailler avec le calendrier EWS de l’utilisateur .

On peut aussi avoir accès par la saisie des paramètres techniques

...

 

et enfin par le zoom des clients , dans le bouton d’envoi de email

...

En mode web, on utilise le serveur web xhtml5 pour le dialogue avec Azure

...

Il faut ensuite revenir dans la saisie divalto qui devrait afficher le message suivant

...

En général le renouvellement de jeton par Azure permet de travailler pendant 90 jours sans avoir a refaire une connexion a son compte.

Les boîtes de dialogue ne sont nécessaires que pour vérifier si la demande de connexion à votre compte EWS fonctionne. En effet, lorsque le programme Diva envoie un e-mail et que le jeton est invalide, il sollicite un renouvellement auprès d'Azure. Si cette demande de renouvellement n'est plus possible (selon les règles définies par votre administrateur Azure, généralement dans un délai de 90 jours), le programme Diva vous demandera alors directement de vous connecter à votre compte EWS via Azure. Dans ce cas, vous verrez s'afficher la boîte de dialogue Azure, soit dans votre navigateur web pour une connexion HTML5, soit sous forme de dialogue Windows pour XWPF

C’est pour cela que ce mode de fonctionnement ne peut être utilisé qu'avec un compte d’un utilisateur dont on sait qu’il est toujours en mode interactif.

Pour cela il faut faire le paramétrage suivant dans azure

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

...

 

Puis dans Divalto il faut indiquer les code tenant id et client id et l’url d’indirection (l’url d’indirection sert pour le mode navigateur web avecxhmtl5 )

 

...

 ou

image-20241120-131037.pngImage Added

En définissant comme valeur (url à adapter si vous êtes en on-premise pour définir les urls que vous utilisez)

Bloc de code
urlredirect=https://api.divaltocloud.com/<site>/<env>/api/v1/EWSToken
cmdurlgettokencode=https://api.divaltocloud.com/<site>/<env>/api/v1/EWSGetTokenCode
methodegettokencode=POST
jsoncalculergettokencode=1
datacalculergettokencode={ "state":"%state%" }

Soit par exemple pour le site 699150 environnement v215:

Bloc de code
urlredirect=https://api.divaltocloud.com/699150/v215/api/v1/EWSToken
cmdurlgettokencode=https://api.divaltocloud.com/699150/v215/api/v1/EWSGetTokenCode
methodegettokencode=POST
jsoncalculergettokencode=1
datacalculergettokencode={ "state":"%state%" }

Une fois terminé, validez et validez le paramétrage de la configuration.

...

Remarque

Il faudra aussi autoriser l’url en question dans votre panel azure

image-20241120-114326.pngImage Added

Vous pouvez à présent appuyer sur le bouton Authentification azure pour être redirigé vers la saisie de votre compte Windows pour récupérer le token et pouvoir envoyer des mails en routage EWS.

 

Liens d’informations supplémentaires

  

https://docs.microsoft.com/fr-fr/azure/active-directory/develop/quickstart-register-app

...

Inscriptions applications

...