Registratie van printer-id's voor Universal Print (UP)

Vereiste API-machtigingen voor OEM-printerclienttoepassingen

Universal Print ondersteunt OAuth2-autorisatietoegangstoken dat is uitgegeven door Azure. Voor het ontwikkelen van een universal print-printer moet de OEM een clienttoepassing registreren bij Azure met de vereiste set machtigingen. OAuth2 definieert twee typen machtigingsaanvragen .

Gedelegeerde bereikmachtigingen

Bereik Tekenreeks weergeven Beschrijving Beheerderstoestemming vereist
Printers.Create Een nieuwe printer maken en registreren. Hiermee kan de toepassing namens de aangemelde gebruiker een printer maken en registreren. Ja

Machtigingen voor toepassingsbereik

Bereik Tekenreeks weergeven Beschrijving Beheerderstoestemming vereist
Printers.Read Leesprinters waar het account toegang toe heeft. Hiermee kan de toepassing de printers lezen zonder een aangemelde gebruiker. Ja
PrinterProperties.ReadWrite Eigenschappen en kenmerken van de printer lezen en schrijven waar het account toegang toe heeft. Hiermee kan de toepassing printereigenschappen en -kenmerken lezen en schrijven zonder een aangemelde gebruiker. Ja
PrintJob.ReadWriteBasic Lees en schrijf de metagegevens van de afdruktaak. Hiermee kan de toepassing de metagegevens van afdruktaken van gebruikers lezen en schrijven zonder een aangemelde gebruiker. Ja
PrintJob.Read Lees de metagegevens en nettolading van de afdruktaak. Hiermee kan de toepassing de metagegevens en nettolading van afdruktaken van gebruikers lezen zonder een aangemelde gebruiker. Ja

Registratie van OEM-printerclienttoepassing

  1. Maak een app met meerdere tenants met behulp van de app-ontwikkelingstenant van uw bedrijf.
  2. Configureer de app voor meerdere tenants om de vereiste set machtigingsbereiken aan te vragen zoals hierboven is gedefinieerd.
    • Printers.Create [Gedelegeerd]
    • Printers.Read [Toepassing]
    • PrinterProperties.ReadWrite [Toepassing]
    • PrintJob.ReadWriteBasic [Toepassing]
    • PrintJob.Read [Toepassing]

Nieuwe toepassing registreren

new app registration

completing the registration

Kopieer de geregistreerde toepassings-id voor later gebruik

save client ID

Instelling voor toepassingsverificatie instellen

configure app auth setting

Vereiste API-machtigingen toevoegen met behulp van Azure Portal

add permissions

Nadat u op de knop 'Een machtiging toevoegen' hebt geklikt, wordt aan de rechterkant een flyout weergegeven. Selecteer 'Microsoft-API's' in de flyout.

Microsoft API

U moet waarschijnlijk omlaag schuiven in de flyout om 'Universal Print' te vinden

Universal Print API

Voeg de hierboven genoemde machtigingen toe.

Delegated permissions

Application permissions

Wanneer de vereiste machtigingen worden toegevoegd, moeten de toepassingsmachtigingen er als volgt uitzien:

API permissions

Zie Alternatieve optie als u op zoek bent naar een andere manier om de API-machtigingen te configureren.

OEM Printer Client Application Publisher bijwerken

De geregistreerde toepassing heeft standaard een niet-geverifieerde uitgever. Als dit ongewijzigd blijft, zien klanten 'niet geverifieerd' in het dialoogvenster toestemming voor machtigingen. Volg procedure: configureer het uitgeversdomein van een toepassing om de uitgever van de toepassing in te stellen.

Voor snelzoekgids zijn de belangrijkste stappen:

application branding page

updated application domain

Notitie

Zodra deze printerclienttoepassings-id is geïntegreerd in de code die wordt uitgevoerd op de printer, wordt de eerste keer dat een printer die deze id gebruikt, geregistreerd bij Universal Print in een klanttenant, de Beheer istrator gevraagd om toestemming te geven voor deze toepassing.

Wanneer het uitgeversdomein wordt bijgewerkt naar een gevalideerd domein, wordt in het dialoogvenster toestemming voor toepassingsmachtigingen de gevalideerde domeinwaarde weergegeven.

application admin consent

Voorbeeld van OAuth 2.0-apparaatverificatieaanvraag

Zodra de bovenstaande stappen zijn voltooid, kunt u om verificatie aanvragen door een HTTP POST-aanvraag naar uit te https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode geven met een HTTP-hoofdtekstsyntaxis van

  • client_id={registered printer client ID}&scope=https%3A%2F%2Fprint.print.microsoft.com%2F.default
POST https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com

client_id=3e41cb36-3180-4566-bf3d-51ec873419e5&scope=https%3A%2F%2Fprint.print.microsoft.com%2F.default

Alternatieve optie om vereiste API-machtigingen toe te voegen

app manifest

  1. Sectie zoeken requiredResourceAccess in het manifest
  2. Kopieer en plak de volgende vereiste API-machtigingen in het manifest. De eenvoudigste manier is om de hele requiredResourceAccess sectie van het manifest te vervangen.
"requiredResourceAccess": [
    {
        "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"
            }
        ]
    }
],
Weergegeven als Beschrijving
Bereik Deze resourcetoegang is gedefinieerd voor het gebruik van gedelegeerd machtigingsbereik.
- Rol Deze resourcetoegang is gedefinieerd voor het gebruik van het machtigingsbereik van de toepassing.
da9b70f6-5323-4ce6-ae5c-88dcc5082966 De id van Universal Print in de globale Azure-cloud.
3e306194-d6c5-43ad-afbb-0e7b16a9c10b De id van de machtiging Printers.Create.
1c90a3a7-465b-49c4-adcc-c8ac83d3d3d3f8 De id van de machtiging PrinterProperties.ReadWrite.
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 De id van de machtiging Printers.Read.
b695614a-52ec-4835-9e13-bdf5ff4c7448 De id van de machtiging PrintJob.Read.
11f87dac-027f-4d76-bd29-1ea1536b93da De id van de machtiging PrintJob.ReadWriteBasic.

add permission scopes to manifest

  • De wijzigingen opslaan.