次の方法で共有


ユニバーサル印刷 (UP) プリンター クライアント ID の登録

必要な OEM プリンター クライアント アプリケーション API のアクセス許可

ユニバーサル印刷では、Azure によって発行された OAuth2 承認アクセス トークンがサポートされています。 ユニバーサル印刷対応プリンターを開発するには、OEM が必要なアクセス許可セットを使用してクライアント アプリケーションを Azure に登録する必要があります。 OAuth2 では、要求 2 種類のアクセス許可 定義されています。

クラウド環境には 2 つのグループがあり、それぞれに独自のクライアント アプリケーションの登録が必要です。 プリンター クライアント アプリケーションの登録を送信するには、それぞれのクラウド環境内のテナントが必要です。

  • グローバル クラウド (パブリック 商用および GCC とも呼ばれる)
  • 米国政府 (GCC-High および DoD とも呼ばれる)

米国政府の詳細情報 にジャンプします。

ヒント

同じプリンターで複数のクラウド環境をサポートできる場合は、管理者が自分のクラウド環境を選択できるようにすると便利です。

委任された範囲の権限

スコープ 文字列の表示 説明 管理者の同意が必要
Printers.Create 新しいプリンターを作成して登録します。 サインインしているユーザーの代わりに、アプリケーションでプリンターの作成と登録を行うことができます。 はい

アプリケーション スコープのアクセス許可

スコープ 文字列の表示 説明 管理者の同意が必要
プリンター.読み取り アカウントがアクセスできるプリンターを読み取ります。 アプリケーションがサインインしているユーザーなしでプリンターを読み取ることができます。 はい
プリンタープロパティ.ReadWrite アカウントがアクセスできるプリンターのプロパティと属性の読み取りと書き込み。 サインインしているユーザーなしで、アプリケーションでプリンターのプロパティと属性を読み書きできるようにします。 はい
PrintJob.ReadWriteBasic 印刷ジョブのメタデータの読み取りと書き込み。 サインインしているユーザーなしで、アプリケーションでユーザーの印刷ジョブのメタデータを読み書きできるようにします。 はい
PrintJob.Read 印刷ジョブのメタデータとペイロードを読み取る。 サインインしているユーザーなしで、アプリケーションがユーザーの印刷ジョブのメタデータとペイロードを読み取ることができます。 はい

OEM プリンター クライアント アプリケーションの登録

  1. 会社のアプリ開発テナントを使用してマルチテナント アプリを作成します。
  2. 上記で定義されているように、必要なアクセス許可スコープのセットを要求するようにマルチテナント アプリを構成します。
    • プリンター.作成 [委任済み]
    • Printers.Read [アプリケーション]
    • PrinterProperties.ReadWrite [アプリケーション]
    • PrintJob.ReadWriteBasic [アプリケーション]
    • PrintJob.Read [アプリケーション]

新しいアプリケーションを登録する

新しいアプリ登録

登録を完了

後で使用するために、登録済みのアプリケーション ID をコピーします

クライアント ID

アプリケーション認証設定を設定する

アプリ認証設定

Azure portal を使用して必要な API アクセス許可を追加する

アクセス許可 を追加

[アクセス許可の追加] ボタンをクリックすると、右側にポップアップが表示されます。 ポップアップで、[Microsoft API] を選択します。

Microsoft API

"ユニバーサル印刷" を見つけるには、ポップアップ内を下にスクロールする必要がある可能性があります

ユニバーサル印刷 の API

上記のアクセス許可を追加します。

委任されたアクセス許可

アプリケーションのアクセス許可

必要なアクセス許可が追加されると、アプリケーションのアクセス許可は次のようになります。

API のアクセス許可

API アクセス許可 構成する別の方法を探している場合は、「代替オプション」 を参照してください。

OEM プリンター クライアント アプリケーションの発行元を更新する

既定では、登録済みアプリケーションには "未確認" の発行元が含まれます。 変更しない場合、アクセス許可の同意ダイアログに "未確認" が表示されます。 方法: アプリケーションの発行元を設定するようにアプリケーションのパブリッシャー ドメイン を構成する方法に従ってください。

クイック リファレンスの主要な手順は次のとおりです。

アプリケーションのページのブランド化

更新されたアプリケーション ドメイン

手記

このプリンター クライアント アプリケーション ID がプリンターで実行されているコードに統合されると、この ID を使用するプリンターが顧客テナントのユニバーサル印刷に初めて登録されるときに、管理者はこのアプリケーションに同意するように求められます。

発行元ドメインが検証済みドメインに更新されると、アプリケーションのアクセス許可要求の同意ダイアログに、検証済みのドメイン値が表示されます。

アプリケーション 管理者の同意

OAuth 2.0 デバイス認証要求のサンプル

上記の手順が完了したら、HTTP 本文の構文を使用して https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode する HTTP POST 要求を発行して検証を要求できます。

  • 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

必要な API アクセス許可を追加するための代替オプション

アプリ マニフェスト をする

  1. マニフェストの requiredResourceAccess セクションを見つける
  2. 次の必要な API アクセス許可をコピーしてマニフェストに貼り付けます。 最も簡単な方法は、マニフェストの requiredResourceAccess セクション全体を置き換える方法です。
"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"
            }
        ]
    }
],
価値 説明
スコープ このリソース アクセスは、委任されたアクセス許可スコープを使用するように定義されています。
役割 このリソース アクセスは、アプリケーションアクセス許可スコープを使用するように定義されています。
da9b70f6-5323-4ce6-ae5c-88dcc5082966 Azure グローバル クラウドのユニバーサル印刷の ID。
3e306194-d6c5-43ad-afbb-0e7b16a9c10b プリンター作成権限のID。
1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8 PrinterProperties.ReadWrite アクセス許可の ID。
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 プリンターの読み取り権限のID。
b695614a-52ec-4835-9e13-bdf5ff4c7448 PrintJob.Read アクセス許可の ID。
11f87dac-027f-4d76-bd29-1ea1536b93da PrintJob.ReadWriteBasic アクセス許可の ID。

マニフェスト

  • 変更を保存します。

US Gov の構成

スコープのアクセス許可のセットと異なるスコープの定義は、グローバル クラウドと USGov クラウドの間で同じです。 USGov クラウド環境のサポートを追加する場合、グローバル クラウド プリンター クライアント アプリケーションの登録は使用できません。 USGov クラウド環境では、別のプリンター クライアント アプリケーションの登録が必要です。

USGov 開発テナントを使用して USGov プリンター クライアント アプリケーションを登録するには、「Azure portal を使用して必要な API アクセス許可を追加する」セクションまで、上記の手順に従います。

手記

現時点では、スコープのアクセス許可は [Microsoft API] タブには表示されません。代わりに、USGov 開発テナントにファースト パーティ サービス アプリを手動でインストールしてください。 これにより、スコープのアクセス許可は、"API " を組織が使用している [] タブで確認できます。

  1. ここで 手順に従って、Windows マシンに Azure PowerShell モジュールをインストール
  2. Azure PowerShell モジュールがインストールされたら、次のコマンドを実行します。
Connect-AzAccount -Environment AzureUSGovernment

# Universal Print Service`
New-AzADServicePrincipal -ApplicationId 'da9b70f6-5323-4ce6-ae5c-88dcc5082966'
  1. 組織 が使用する API は、[ユニバーサル印刷] アプリの [] タブ内で確認でき、その下には [] のアクセス許可スコープが表示されました

  2. 上記のグローバル クラウドの手順に従って、プリンター クライアント アプリケーションの登録を完了します。