Registrazione dell'ID client della stampante di stampa universale (UP)
Autorizzazioni API dell'applicazione client della stampante OEM necessarie
Universal Print supporta il token di accesso di autorizzazione OAuth2 rilasciato da Azure. Lo sviluppo di una stampante pronta per la stampa universale richiede all'OEM di registrare un'applicazione client con Azure con il set di autorizzazioni richiesto. OAuth2 definisce 2 tipi di richieste di autorizzazione .
Autorizzazioni per l'ambito delegato
Scope | Visualizza stringa | Descrizione | Consenso amministratore obbligatorio |
---|---|---|---|
Printers.Create | Creare e registrare una nuova stampante. | Consente all'applicazione di creare e registrare una stampante per conto dell'utente connesso. | Sì |
Autorizzazioni per l'ambito dell'applicazione
Scope | Visualizza stringa | Descrizione | Consenso amministratore obbligatorio |
---|---|---|---|
Printers.Read | Leggere le stampanti a cui l'account ha accesso. | Consente all'applicazione di leggere le stampanti senza un utente connesso. | Sì |
PrinterProperties.ReadWrite | Proprietà e attributi della stampante di lettura e scrittura a cui l'account ha accesso. | Consente all'applicazione di leggere e scrivere proprietà e attributi della stampante senza un utente connesso. | Sì |
PrintJob.ReadWriteBasic | Leggere e scrivere i metadati del processo di stampa. | Consente all'applicazione di leggere e scrivere i metadati dei processi di stampa degli utenti senza un utente connesso. | Sì |
PrintJob.Read | Leggere i metadati e il payload del processo di stampa. | Consente all'applicazione di leggere i metadati e il payload dei processi di stampa degli utenti senza un utente connesso. | Sì |
Registrazione dell'applicazione client della stampante OEM
- Creare un'app multi-tenant usando il tenant di sviluppo di app aziendale.
- Configurare l'app multi-tenant per richiedere il set necessario di ambiti di autorizzazione, come definito in precedenza.
- Printers.Create [Delegated]
- Printers.Read [Application]
- PrinterProperties.ReadWrite [Applicazione]
- PrintJob.ReadWriteBasic [Application]
- PrintJob.Read [Applicazione]
Registrare una nuova applicazione
Copiare l'ID applicazione registrato per un uso successivo
Impostare l'impostazione di autenticazione dell'applicazione
Aggiungere le autorizzazioni API necessarie usando portale di Azure
Dopo aver fatto clic sul pulsante "Aggiungi un'autorizzazione", verrà visualizzato un riquadro a comparsa sul lato destro. Nel riquadro a comparsa selezionare "API Microsoft".
Probabilmente sarà necessario scorrere verso il basso nel riquadro a comparsa per trovare "Stampa universale"
Aggiungere le autorizzazioni indicate in precedenza.
Quando vengono aggiunte le autorizzazioni necessarie, le autorizzazioni dell'applicazione dovrebbero essere simili alle seguenti:
Vedere 'Opzione alternativa' se si sta cercando un altro modo per configurare le autorizzazioni API.
Aggiornare il server di pubblicazione dell'applicazione client della stampante OEM
Per impostazione predefinita, l'applicazione registrata avrà un server di pubblicazione "non verificato". Se lasciato invariato, i clienti visualizzeranno "non verificati" nella finestra di dialogo di consenso delle autorizzazioni. Seguire Procedura: Configurare il dominio di pubblicazione di un'applicazione per impostare l'autore dell'applicazione.
Per riferimento rapido, i passaggi principali sono:
Nota
Una volta integrato questo ID applicazione client della stampante nel codice in esecuzione sulla stampante, alla prima registrazione di una stampante che usa questo ID viene registrato in stampa universale in un tenant del cliente, all'Amministrazione istrator verrà richiesto di fornire il consenso all'applicazione.
Quando il dominio del server di pubblicazione viene aggiornato a un dominio convalidato, la finestra di dialogo di consenso della richiesta di autorizzazione dell'applicazione visualizzerà il valore di dominio convalidato.
Esempio di richiesta di autenticazione del dispositivo OAuth 2.0
Una volta completati i passaggi precedenti, è possibile richiedere la verifica inviando una richiesta HTTP POST a https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode
con una sintassi del corpo HTTP di
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
Opzione alternativa per aggiungere le autorizzazioni API necessarie
- Trovare
requiredResourceAccess
la sezione nel manifesto - Copiare e incollare le autorizzazioni API necessarie seguenti nel manifesto. Il modo più semplice consiste nel sostituire l'intera
requiredResourceAccess
sezione del manifesto.
"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"
}
]
}
],
Valore | Descrizione |
---|---|
Ambito | Questo accesso alle risorse viene definito per l'uso dell'ambito di autorizzazione delegata. |
Ruolo | Questo accesso alle risorse è definito per usare l'ambito di autorizzazione dell'applicazione. |
da9b70f6-5323-4ce6-ae5c-88dcc5082966 | ID di Stampa universale nel cloud globale di Azure. |
3e306194-d6c5-43ad-afbb-0e7b16a9c10b | ID dell'autorizzazione Printers.Create. |
1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8 | ID dell'autorizzazione PrinterProperties.ReadWrite. |
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 | ID dell'autorizzazione Printers.Read. |
b695614a-52ec-4835-9e13-bdf5ff4c7448 | ID dell'autorizzazione PrintJob.Read. |
11f87dac-027f-4d76-bd29-1ea1536b93da | ID dell'autorizzazione PrintJob.ReadWriteBasic. |
- Salvare le modifiche.