Aller au contenu principal

3.3.1. Non-Textual Verification URI Optimization (非文本验证 URI 优化)

🇬🇧 English

When "verification_uri_complete" is included in the authorization response (Section 3.2), clients MAY present this URI in a non-textual manner using any method that results in the browser being opened with the URI, such as with QR (Quick Response) codes or NFC (Near Field Communication), to save the user from typing the URI.

For usability reasons, it is RECOMMENDED for clients to still display the textual verification URI ("verification_uri") for users who are not able to use such a shortcut. Clients MUST still display the "user_code", as the authorization server will require the user to confirm it to disambiguate devices or as remote phishing mitigation (see Section 5.4).

If the user starts the user interaction by navigating to "verification_uri_complete", then the user interaction described in Section 3.3 is still followed, with the optimization that the user does not need to type in the "user_code". The server SHOULD display the "user_code" to the user and ask them to verify that it matches the "user_code" being displayed on the device to confirm they are authorizing the correct device. As before, in addition to taking steps to confirm the identity of the device, the user should also be afforded the choice to approve or deny the authorization request.

+-------------------------------------------------+
| |
| Scan the QR code or, using +------------+ |
| a browser on another device, |[_].. . [_]| |
| visit: | . .. . .| |
| https://example.com/device | . . . ....| |
| |. . . . | |
| And enter the code: |[_]. ... . | |
| WDJB-MJHT +------------+ |
| |
+-------------------------------------------------+

Figure 3: Example User Instruction with QR Code Representation
of the Complete Verification URI

🇨🇳 中文

当授权响应(第 3.2 节)中包含 "verification_uri_complete" 时,客户端可以 (MAY) 使用任何导致浏览器使用该 URI 打开的方法,以非文本方式呈现此 URI,例如使用 QR(快速响应)码或 NFC(近场通信),以免用户键入 URI。

出于可用性原因,推荐 (RECOMMENDED) 客户端仍然为无法使用此类快捷方式的用户显示文本验证 URI ("verification_uri")。客户端必须 (MUST) 仍然显示 "user_code",因为授权服务器将要求用户确认它以消除设备歧义或作为远程钓鱼缓解措施(参见第 5.4 节)。

如果用户通过导航到 "verification_uri_complete" 开始用户交互,则仍遵循第 3.3 节中描述的用户交互,优化之处在于用户无需键入 "user_code"。服务器应该 (SHOULD) 向用户显示 "user_code" 并要求他们验证它是否与设备上显示的 "user_code" 匹配,以确认他们正在授权正确的设备。如前所述,除了采取措施确认设备的身份外,还应该让用户选择批准或拒绝授权请求。

+-------------------------------------------------+
| |
| 扫描二维码或使用另一台设备上 +------------+ |
| 的浏览器访问: |[_].. . [_]| |
| https://example.com/device | . .. . .| |
| | . . . ....| |
| 并输入代码: |. . . . | |
| WDJB-MJHT |[_]. ... . | |
| +------------+ |
| |
+-------------------------------------------------+

图 3: 带有完整验证 URI 的 QR 码表示的用户指令示例

🇯🇵 日本語

認可応答(セクション 3.2)に "verification_uri_complete" が含まれている場合、クライアントは、QR(クイックレスポンス)コードや NFC(近距離無線通信)などの、URI でブラウザが開かれる任意の方法を使用して、この URI を非テキスト方式で提示してもかまいません (MAY)。これにより、ユーザーが URI を入力する必要がなくなります。

ユーザビリティの理由から、そのようなショートカットを使用できないユーザーのために、クライアントはテキストの検証 URI ("verification_uri") を引き続き表示することが推奨されます (RECOMMENDED)。認可サーバーは、デバイスを明確にするため、またはリモートフィッシング緩和策として(セクション 5.4 参照)、ユーザーに確認を要求するため、クライアントは "user_code" を引き続き表示しなければなりません (MUST)。

ユーザーが "verification_uri_complete" にナビゲートすることでユーザーインタラクションを開始する場合、セクション 3.3 で説明されているユーザーインタラクションに引き続き従いますが、ユーザーが "user_code" を入力する必要がないという最適化があります。サーバーは、ユーザーに "user_code" を表示し、正しいデバイスを認可していることを確認するために、デバイスに表示されている "user_code" と一致することを確認するよう求めるべきです (SHOULD)。前述のように、デバイスの ID を確認する手順を踏むことに加えて、ユーザーには認可リクエストを承認または拒否する選択肢も与えられる必要があります。

+-------------------------------------------------+
| |
| QRコードをスキャンするか、 +------------+ |
| 別のデバイスでブラウザを |[_].. . [_]| |
| 使用して訪問: | . .. . .| |
| https://example.com/device | . . . ....| |
| |. . . . | |
| コードを入力: |[_]. ... . | |
| WDJB-MJHT +------------+ |
| |
+-------------------------------------------------+

図 3: 完全な検証 URI の QR コード表現を含むユーザー指示の例

🇫🇷 Français

Lorsque "verification_uri_complete" est inclus dans la réponse d'autorisation (Section 3.2), les clients PEUVENT présenter cet URI de manière non textuelle en utilisant toute méthode qui entraîne l'ouverture du navigateur avec l'URI, comme avec des codes QR (Quick Response) ou NFC (Near Field Communication), pour éviter à l'utilisateur de saisir l'URI.

Pour des raisons d'utilisabilité, il est RECOMMANDÉ que les clients affichent toujours l'URI de vérification textuel ("verification_uri") pour les utilisateurs qui ne peuvent pas utiliser un tel raccourci. Les clients DOIVENT toujours afficher le "user_code", car le serveur d'autorisation exigera que l'utilisateur le confirme pour lever l'ambiguïté des appareils ou comme atténuation du phishing à distance (voir Section 5.4).

Si l'utilisateur démarre l'interaction utilisateur en naviguant vers "verification_uri_complete", alors l'interaction utilisateur décrite dans la Section 3.3 est toujours suivie, avec l'optimisation que l'utilisateur n'a pas besoin de saisir le "user_code". Le serveur DEVRAIT afficher le "user_code" à l'utilisateur et lui demander de vérifier qu'il correspond au "user_code" affiché sur l'appareil pour confirmer qu'il autorise le bon appareil. Comme précédemment, en plus de prendre des mesures pour confirmer l'identité de l'appareil, l'utilisateur devrait également avoir le choix d'approuver ou de refuser la demande d'autorisation.

+-------------------------------------------------+
| |
| Scannez le code QR ou, en +------------+ |
| utilisant un navigateur sur un |[_].. . [_]| |
| autre appareil, visitez: | . .. . .| |
| https://example.com/device | . . . ....| |
| |. . . . | |
| Et entrez le code: |[_]. ... . | |
| WDJB-MJHT +------------+ |
| |
+-------------------------------------------------+

Figure 3: Exemple d'instruction utilisateur avec représentation
du code QR de l'URI de vérification complet

🇩🇪 Deutsch

Wenn "verification_uri_complete" in der Autorisierungsantwort (Abschnitt 3.2) enthalten ist, KÖNNEN Clients diesen URI auf nicht-textuelle Weise unter Verwendung jeder Methode präsentieren, die dazu führt, dass der Browser mit dem URI geöffnet wird, wie z.B. mit QR (Quick Response) Codes oder NFC (Near Field Communication), um dem Benutzer das Eingeben des URI zu ersparen.

Aus Gründen der Benutzerfreundlichkeit wird EMPFOHLEN, dass Clients den textuellen Verifizierungs-URI ("verification_uri") für Benutzer anzeigen, die eine solche Abkürzung nicht verwenden können. Clients MÜSSEN weiterhin den "user_code" anzeigen, da der Autorisierungsserver vom Benutzer verlangen wird, ihn zu bestätigen, um Geräte eindeutig zu machen oder als Minderung von Remote-Phishing (siehe Abschnitt 5.4).

Wenn der Benutzer die Benutzerinteraktion durch Navigieren zu "verification_uri_complete" startet, wird die in Abschnitt 3.3 beschriebene Benutzerinteraktion weiterhin befolgt, mit der Optimierung, dass der Benutzer den "user_code" nicht eingeben muss. Der Server SOLLTE dem Benutzer den "user_code" anzeigen und ihn bitten zu überprüfen, ob er mit dem auf dem Gerät angezeigten "user_code" übereinstimmt, um zu bestätigen, dass er das richtige Gerät autorisiert. Wie zuvor sollte dem Benutzer zusätzlich zu Schritten zur Bestätigung der Geräteidentität auch die Wahl geboten werden, die Autorisierungsanfrage zu genehmigen oder abzulehnen.

+-------------------------------------------------+
| |
| Scannen Sie den QR-Code oder +------------+ |
| verwenden Sie einen Browser |[_].. . [_]| |
| auf einem anderen Gerät, | . .. . .| |
| besuchen Sie: | . . . ....| |
| https://example.com/device |. . . . | |
| |[_]. ... . | |
| Und geben Sie den Code ein: +------------+ |
| WDJB-MJHT |
| |
+-------------------------------------------------+

Abbildung 3: Beispiel für Benutzeranweisungen mit QR-Code-Darstellung
des vollständigen Verifizierungs-URI

🇮🇹 Italiano

Quando "verification_uri_complete" è incluso nella risposta di autorizzazione (Sezione 3.2), i client POSSONO presentare questo URI in modo non testuale utilizzando qualsiasi metodo che risulti nell'apertura del browser con l'URI, come con codici QR (Quick Response) o NFC (Near Field Communication), per evitare all'utente di digitare l'URI.

Per motivi di usabilità, è RACCOMANDATO che i client visualizzino ancora l'URI di verifica testuale ("verification_uri") per gli utenti che non sono in grado di utilizzare tale scorciatoia. I client DEVONO ancora visualizzare il "user_code", poiché il server di autorizzazione richiederà all'utente di confermarlo per disambiguare i dispositivi o come mitigazione del phishing remoto (vedere Sezione 5.4).

Se l'utente avvia l'interazione utente navigando a "verification_uri_complete", allora l'interazione utente descritta nella Sezione 3.3 viene ancora seguita, con l'ottimizzazione che l'utente non deve digitare il "user_code". Il server DOVREBBE visualizzare il "user_code" all'utente e chiedergli di verificare che corrisponda al "user_code" visualizzato sul dispositivo per confermare che sta autorizzando il dispositivo corretto. Come prima, oltre a prendere provvedimenti per confermare l'identità del dispositivo, all'utente dovrebbe anche essere data la scelta di approvare o negare la richiesta di autorizzazione.

+-------------------------------------------------+
| |
| Scansiona il codice QR o, +------------+ |
| utilizzando un browser su un |[_].. . [_]| |
| altro dispositivo, visita: | . .. . .| |
| https://example.com/device | . . . ....| |
| |. . . . | |
| E inserisci il codice: |[_]. ... . | |
| WDJB-MJHT +------------+ |
| |
+-------------------------------------------------+

Figura 3: Esempio di istruzione utente con rappresentazione
del codice QR dell'URI di verifica completo