1. Connectez-vous à la Portail Microsoft Azure et aller pour les inscriptions aux Apps.

    MS Azure - App registrations
  2. Cliquez sur Nouvel enregistrement et remplissez les détails de la nouvelle application:

    1. Nom - Le nom de cette application (qui peut être modifié ultérieurement). Par exemple, MyQ UP.

    2. Types de comptes pris en charge - Qui peut utiliser cette application ou accéder à cette API? Sélectionnez le Comptes dans n'importe quel répertoire organisationnel (n'importe quel répertoire Azure AD). Multi-tenant) option.

    3. URI de redirection (facultatif) - La réponse d'authentification est renvoyée à cet URI après avoir réussi à authentifier l'utilisateur. Sélectionnez le Client public/natif (mobile&bureau) dans la liste déroulante.

    4. Cliquez sur Registre.

      MS Azure - new app registration properties
  3. La page de présentation de la nouvelle application s'ouvre. Copiez le ID de l'application (client) et le ID du répertoire (locataire) car ils sont nécessaires pour la connexion à MyQ.

    MS Azure - new app overview
  4. Dans le menu de gauche, cliquez sur Manifeste et modifier le **requiredResourcesAccess, replyUrlsWithType, allowPublicClient sections, selon les modalités suivantes:

    "allowPublicClient": true,
    "replyUrlsWithType": [
        {
            "url": "https://login.live.com/oauth20_desktop.srf",
            "type": "InstalledClient"
        }
    ],
    "requiredResourceAccess": [
        {
            "resourceAppId": "00000003-0000-0000-c000-000000000000",
            "resourceAccess": [
                {
                    "id": "93dae4bd-43a1-4a23-9a1a-92957e1d9121",
                    "type": "Scope"
                },
                {
                    "id": "06ceea37-85e2-40d7-bec3-91337a46038f",
                    "type": "Scope"
                },
                {
                    "id": "7427e0e9-2fba-42fe-b0c0-848c9e6a8182",
                    "type": "Scope"
                }
            ]
        },
        {
            "resourceAppId": "da9b70f6-5323-4ce6-ae5c-88dcc5082966",
            "resourceAccess": [
                {
                    "id": "3e306194-d6c5-43ad-afbb-0e7b16a9c10b",
                    "type": "Scope"
                },
                {
                    "id": "1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8",
                    "type": "Role"
                },
                {
                    "id": "2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8",
                    "type": "Role"
                },
                {
                    "id": "b695614a-52ec-4835-9e13-bdf5ff4c7448",
                    "type": "Role"
                },
                {
                    "id": "11f87dac-027f-4d76-bd29-1ea1536b93da",
                    "type": "Role"
                }
            ]
        }
    ]
    CODE
  5. Dans le menu de gauche, cliquez sur Permissions API et cliquez sur Accorder le consentement de l'administrateur pour les scopes vus dans l'image ci-dessous:

    MS Azure - API permissions
  6. Allez dans Impression universelle et activez Conversion de documents.

    MS Azure - Universal Print document conversion


** Les modifications apportées aux paramètres JSON à l'étape 4, définissent les champs d'application requis pour l'impression universelle et modifient l'application pour qu'elle soit traitée comme publique (nécessaire pour demander le code du périphérique).

Le tableau ci-dessous présente les détails des champs d'application requis:

ID du champ d'application

Description

06ceea37-85e2-40d7-bec3-91337a46038f

Microsoft Graph: PrintShare.ReadWrite.All

Lecture et écriture de partages d'imprimantes

7427e0e9-2fba-42fe-b0c0-848c9e6a8182

Microsoft Graph: accès hors ligne

Permet à MyQ de demander le jeton d'accès via le flux MS OAuth2 complet une seule fois, puis d'utiliser le jeton Refresh pour l'échanger contre le jeton d'accès.

93dae4bd-43a1-4a23-9a1a-92957e1d9121

Microsoft Graph: Printer.FullControl.All

Enregistrer, lire, mettre à jour et désenregistrer les imprimantes.

3e306194-d6c5-43ad-afbb-0e7b16a9c10b

UP: Imprimantes.Créer

Créer (enregistrer) des imprimantes

1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8

UP: PrinterProperties.ReadWrite (Propriétés de l'imprimante)

Lire et écrire les propriétés et les attributs des imprimantes.

2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8

UP: Imprimantes.Lire

Imprimantes de lecture

b695614a-52ec-4835-9e13-bdf5ff4c7448

UP: PrintJob.Read

Lire les métadonnées et les données utiles des travaux d'impression des utilisateurs.

11f87dac-027f-4d76-bd29-1ea1536b93da

UP: PrintJob.ReadWriteBasic

Lire et écrire les métadonnées des travaux d'impression des utilisateurs.