KamoCRM

すべてのWOPIエンドポイントをドキュメントに埋め込むと、トークンがマイニングされました

FixDocsService
Shipped
2026年9月23日 1:21 UTC
Author
Kamo
Commit
168cc8a

CheckFileInfo は、アクセストークンを比較した WOPI のエンドポイントのみでした。 リクエストパスに対する文書化とライブアクセスを再チェック; GetFile, PutFile, PutRelativeFile, RenameFile, lock/unlock/refresh/get-lock オーバーライドのみ トークンのシグネチャとexpiryを検証し、imgIdが示したものを操作しました。 ページの先頭へ POST /api/docs/open/{imgId} が 1 つのドキュメントでマイニングしたトークン メンバーは正式に開いていると、他の文書を読んだり上書きしたりできます。 パスを編集し、ロック、ロック解除、またはロックをプローブすることにより、任意の組織 どんな文書でも同じように。 読み取り専用の共有受信者の有効なトークン ドキュメントを直接上書きすることもできます。UserCanWrite フラグを渡します。 checkFileInfo は、エディタにクライアント側を強制するように指示しました。 WOPI エンドポイントでは、トークンの JWT 件名 (imgId) が必要です。 WopiTokenService は mint 時間で署名します) パスの imgId を等しくし、 DocumentService.canUserAccess (読み込み: GetFile, GET LOCK) または canUserWrite (書き込み: PutFile, PutRelativeFile, RenameFile, LOCK/UNLOCK/ トークンのクレームを信頼するのではなく、データベースに対するREFRESH LOCK) — トークンがマイナスされた後、アクセスが再発または期限切れになる可能性があるため、ライブチェックは 静的許可要求よりも厳密に強い。 トークン認証 バイト読み取り/書き込みは DocumentAccessAuditor で同じ方法で記録されます すでに無効なトークンでした。 新しいテスト: WopiControllerAccessTest (リストされているすべてのエンドポイントをカバーする11ケース) 上記); WopiController がローカルに変化する変更を変換することによってチェックされたミューテーションチェック 全部を 11 赤にします。 WopiControllerAuditTest と WopiEditSessionTest 既存のケースがすべてであるので、現在のアクセスチェックをスタブするために更新 許可された発信者を仮定して下さい.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing