あなたは必ずしも/wopibootstrapper
エンドポイントもGetNewAccessToken
メソッドを実装する必要はありません。それらはOffice Online (365) integration programに固有のものです。
あなたの仕事は、アプリケーション内のWOPIフレームのPOST要求に含まれるaccess_token
を生成することです(問題の画像と同様)。
このトークンは、WOPIクライアント(WAC/OWA/OOSサーバー)によって使用されます。 WOPIクライアントは、他の方法でトークンを解読したり理解したりする必要がありません。それはWOPIホストに対して行われているすべてのリクエストに追加されます。一方、WOPIホストは、トークンを検証できる必要があります。トークンは、与えられたユーザがどのリソースにアクセスしているかを示します。 understandのコンセプトはaccess_token
であることを確認してください。特に:
アクセストークンのスコープは、単一のユーザーとリソースの組み合わせにする必要があります。
どのようにトークンを生成するかは、あなた次第です。通常、指定されたユーザーが特定のリソースにアクセスできるかどうかをユーザー/ロールストア(WindowsのACLストア、データベースなど)に問い合せ、トークン内にこの情報(要求)を格納して暗号化しますそれは偽造することはできません)。もう1つの選択肢は、ユーザーに関する情報だけを含めることであり、WOPIホストはトークンの検証中に権限を把握できるようにします(ユーザー/ロールストアに話してください)...これは、前述したように、WOPIクライアントは、トークンに何が入っているか気にしないでください。 access_token=xyz
を設定しても、WOPIホストでは決して許可を気にしない場合はチェックしないでください。
トークンの生成と検証のプロセスは、OfficeDev/PnP-WOPIで非常によく示されています。 HomeController
およびWopiSecurity
クラスを参照してください。
私の他の回答hereにいくつかの他の例があります。