Registrering av klient-ID för universell utskrift (UP)
Nödvändiga API-behörigheter för OEM-skrivarklientprogram
Universal Print stöder OAuth2-auktoriseringsåtkomsttoken som utfärdats av Azure. För att utveckla en universell utskriftsklar skrivare måste OEM-tillverkaren registrera ett klientprogram med Azure med den nödvändiga uppsättningen behörigheter. OAuth2 definierar 2 typer av behörighetsbegäranden.
Behörigheter för delegerat omfång
Omfattning | Visa sträng | beskrivning | Administratörsmedgivande krävs |
---|---|---|---|
Printers.Create | Skapa och registrera en ny skrivare. | Tillåter att programmet skapar och registrerar en skrivare för den inloggade användarens räkning. | Ja |
Behörigheter för programomfattning
Omfattning | Visa sträng | beskrivning | Administratörsmedgivande krävs |
---|---|---|---|
Printers.Read | Läs skrivare som kontot har åtkomst till. | Tillåter att programmet läser skrivarna utan en inloggad användare. | Ja |
PrinterProperties.ReadWrite | Läs- och skrivegenskaper och attribut som kontot har åtkomst till. | Gör att programmet kan läsa och skriva skriva skrivaregenskaper och attribut utan en inloggad användare. | Ja |
PrintJob.ReadWriteBasic | Läsa och skriva metadata för utskriftsjobbet. | Tillåter att programmet läser och skriver metadata för användarnas utskriftsjobb utan en inloggad användare. | Ja |
PrintJob.Read | Läs metadata och nyttolast för utskriftsjobbet. | Tillåter att programmet läser metadata och nyttolasten för användarnas utskriftsjobb utan en inloggad användare. | Ja |
Registrering av OEM-skrivarklientprogram
- Skapa en app för flera klientorganisationer med hjälp av företagets apputvecklingsklientorganisation.
- Konfigurera appen för flera klientorganisationer för att begära den nödvändiga uppsättningen behörighetsomfång enligt definitionen ovan.
- Printers.Create [Delegerad]
- Printers.Read [Program]
- PrinterProperties.ReadWrite [Program]
- PrintJob.ReadWriteBasic [Program]
- PrintJob.Read [Program]
Registrera nytt program
Kopiera det registrerade program-ID:t för senare användning
Ange inställning för programautentisering
Lägga till nödvändiga API-behörigheter med Hjälp av Azure-portalen
När du har klickat på knappen Lägg till en behörighet visas en utfällbara meny till höger. I den utfällbara menyn väljer du "Microsoft-API:er".
Du kommer troligen att behöva rulla nedåt i den utfällbara menyn för att hitta "Universal Print"
Lägg till de behörigheter som nämns ovan.
När de nödvändiga behörigheterna läggs till bör programbehörigheterna se ut så här:
Se Alternativ alternativ om du letar efter ett annat sätt att konfigurera API-behörigheterna.
Uppdatera OEM-skrivarklientprogrammets utgivare
Som standard har det registrerade programmet en "overifierad" utgivare. Om de lämnas oförändrade visas "overifierade" kunder i dialogrutan med behörighetsmedgivande. Följ Så här gör du: Konfigurera ett programs utgivardomän för att ange programutgivaren.
För snabbreferens är de viktigaste stegen:
Kommentar
När det här skrivarklientprogram-ID:t har integrerats i koden som körs på skrivaren, första gången en skrivare med det här ID:t registreras till Universal Print i en kundklientorganisation, uppmanas administratören att godkänna programmet.
När utgivardomänen uppdateras till en validerad domän visas det verifierade domänvärdet i dialogrutan med medgivande för programbehörighetsbegäran.
Exempel på OAuth 2.0-enhetsautentiseringsbegäran
När ovanstående steg har slutförts kan du begära att verifiera genom att utfärda en HTTP POST-begäran till https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode
med en HTTP-brödtextsyntax för
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
Alternativt alternativ för att lägga till nödvändiga API-behörigheter
- Sök
requiredResourceAccess
efter avsnittet i manifestet - Kopiera och klistra in följande nödvändiga API-behörigheter i manifestet. Det enklaste sättet är att ersätta hela
requiredResourceAccess
avsnittet i manifestet.
"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"
}
]
}
],
Värde | beskrivning |
---|---|
Definitionsområde | Den här resursåtkomsten definieras för att använda delegerat behörighetsomfång. |
Roll | Den här resursåtkomsten definieras för att använda programbehörighetsomfånget. |
da9b70f6-5323-4ce6-ae5c-88dcc5082966 | ID:t för Universell utskrift i det globala Azure-molnet. |
3e306194-d6c5-43ad-afbb-0e7b16a9c10b | ID för Printers.Create-behörigheten. |
1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8 | ID:t för PrinterProperties.ReadWrite-behörigheten. |
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 | ID:t för Printers.Read-behörigheten. |
b695614a-52ec-4835-9e13-bdf5ff4c7448 | ID för behörigheten PrintJob.Read. |
11f87dac-027f-4d76-bd29-1ea1536b93da | ID för behörigheten PrintJob.ReadWriteBasic. |
- Spara ändringarna.