Pendaftaran ID Klien Printer Universal Print (UP)
Izin API Aplikasi Klien Printer OEM yang Diperlukan
Universal Print mendukung token akses otorisasi OAuth2 yang dikeluarkan oleh Azure. Mengembangkan printer siap Universal Print mengharuskan OEM untuk mendaftarkan aplikasi klien dengan Azure dengan sekumpulan izin yang diperlukan. OAuth2 mendefinisikan 2 jenis permintaan izin .
Izin Cakupan yang Didelegasikan
Cakupan | String Tampilan | Deskripsi | Persetujuan Admin Diperlukan |
---|---|---|---|
Printers.Create | Buat dan daftarkan printer baru. | Memungkinkan aplikasi untuk membuat dan mendaftarkan printer atas nama pengguna yang masuk. | Ya |
Izin Cakupan Aplikasi
Cakupan | String Tampilan | Deskripsi | Persetujuan Admin Diperlukan |
---|---|---|---|
Printers.Read | Membaca printer yang dapat diakses akun. | Memungkinkan aplikasi membaca printer tanpa pengguna yang masuk. | Ya |
PrinterProperties.ReadWrite | Membaca dan menulis properti printer dan atribut yang dapat diakses akun. | Memungkinkan aplikasi membaca dan menulis properti dan atribut printer tanpa pengguna yang masuk. | Ya |
PrintJob.ReadWriteBasic | Membaca dan menulis metadata pekerjaan cetak. | Memungkinkan aplikasi membaca dan menulis metadata pekerjaan cetak pengguna tanpa pengguna yang masuk. | Ya |
PrintJob.Read | Baca metadata dan payload pekerjaan cetak. | Memungkinkan aplikasi membaca metadata dan payload pekerjaan cetak pengguna tanpa pengguna yang masuk. | Ya |
Pendaftaran Aplikasi Klien Printer OEM
- Buat aplikasi multi-penyewa menggunakan penyewa pengembangan aplikasi perusahaan Anda.
- Konfigurasikan aplikasi multi-penyewa untuk meminta serangkaian cakupan izin yang diperlukan seperti yang ditentukan di atas.
- Printers.Create [Delegated]
- Printers.Read [Application]
- PrinterProperties.ReadWrite [Aplikasi]
- PrintJob.ReadWriteBasic [Aplikasi]
- PrintJob.Read [Aplikasi]
Mendaftarkan aplikasi baru
Salin ID aplikasi terdaftar untuk digunakan nanti
Mengatur pengaturan autentikasi aplikasi
Menambahkan izin API yang diperlukan menggunakan portal Azure
Setelah mengklik tombol "Tambahkan izin", flyout akan muncul di sisi kanan. Di flyout, pilih "Microsoft API".
Anda mungkin perlu menggulir ke bawah dalam flyout untuk menemukan "Universal Print"
Tambahkan izin yang disebutkan di atas.
Saat izin yang diperlukan ditambahkan, izin aplikasi akan terlihat seperti:
Lihat 'Opsi Alternatif' jika Anda mencari cara lain untuk mengonfigurasi izin API.
Memperbarui Penerbit Aplikasi Klien Printer OEM
Secara default, aplikasi terdaftar akan memiliki penerbit "belum diverifikasi". Jika tidak berubah, pelanggan akan melihat "tidak diverifikasi" dalam dialog persetujuan izin. Silakan ikuti Cara: Mengonfigurasi domain penerbit aplikasi untuk mengatur penerbit aplikasi.
Untuk referensi cepat, langkah intinya adalah:
Catatan
Setelah ID Aplikasi Klien Printer ini diintegrasikan ke dalam kode yang berjalan pada printer, pertama kali printer yang menggunakan ID ini mendaftar ke Universal Print di penyewa pelanggan, Administrator akan diminta untuk menyetujui aplikasi ini.
Saat domain penerbit diperbarui ke domain yang divalidasi, dialog persetujuan permintaan izin aplikasi akan menampilkan nilai domain yang divalidasi.
Sampel Permintaan Autentikasi Perangkat OAuth 2.0
Setelah langkah-langkah di atas selesai, Anda dapat meminta verifikasi dengan mengeluarkan permintaan HTTP POST ke https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode
dengan sintaks isi HTTP
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
Opsi Alternatif untuk menambahkan izin API yang diperlukan
- Temukan
requiredResourceAccess
bagian dalam manifes - Salin dan tempel izin API yang diperlukan berikut ke dalam manifes. Cara paling sederhana adalah mengganti seluruh
requiredResourceAccess
bagian manifes.
"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"
}
]
}
],
Nilai | Deskripsi |
---|---|
Scope | Akses sumber daya ini didefinisikan untuk menggunakan cakupan izin yang didelegasikan. |
Peran | Akses sumber daya ini didefinisikan untuk menggunakan cakupan izin Aplikasi. |
da9b70f6-5323-4ce6-ae5c-88dcc5082966 | ID Universal Print di cloud global Azure. |
3e306194-d6c5-43ad-afbb-0e7b16a9c10b | ID Printers.Buat izin. |
1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8 | ID izin PrinterProperties.ReadWrite. |
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 | ID izin Printers.Read. |
b695614a-52ec-4835-9e13-bdf5ff4c7448 | ID izin PrintJob.Read. |
11f87dac-027f-4d76-bd29-1ea1536b93da | ID izin PrintJob.ReadWriteBasic. |
- Simpan perubahan.