【Obsidian】Kindleハイライト連携でChromeが勝手に起動してログインできない原因と対処法

1: 名無しさん
ObsidianでKindleのハイライト連携しようとするとログインで勝手にChrome開いて詰むんだが

2: 名無しさん
わかる。アプリ内のモーダルで完結してくれないと認証通らないやつな

3: 名無しさん
AIに聞いても解決しないし誰か回避策知らん?

 

ObsidianでKindleのハイライトを取り込もうとした際、アプリ内の認証画面から外部のブラウザへ自動的に切り替わってしまい、連携の初期設定が完了しない現象が起きます。この問題は、プラグイン側のログイン処理の仕組みとOSにおけるブラウザ呼び出しの動作が合致していないことが原因で発生します。

 

アプリ内モーダルではなく標準ブラウザが起動してしまう仕組み

ひかわ
画面内のログインボタンを押すと、なぜかChromeが開いてしまって連携が止まる…

 
プラグインの多くは、アプリ内部でWebページを表示する内蔵ブラウザ機能を利用してログイン処理を行います。しかし、セキュリティ設定やOS側の既定のブラウザ連携の動きによって、認証用の画面が開かれた瞬間にアプリ内部の処理から離脱し、パソコンにインストールされている通常の外部ブラウザ(Chromeなど)へ制御が移ってしまうことがあります。
この状態になると、ブラウザ側で無事にログインを完了させたとしても、そのログイン情報(Cookieやセッション情報)がObsidian側のプラグインに送り返されず、アプリ側では未ログインのままとして処理が途切れてしまいます。手動でURLを貼り直しても認証が成立しないのは、ブラウザとアプリの間で認証データを受け渡す経路が途切れているためです。
 

外部ブラウザへの遷移を防ぎセットアップを完了させる方法

ひかわ
自分でプログラムを修正するか要望を出すしか解決策はないの?

 
プラグイン内部の処理でログイン画面を開く際の命令が外部ブラウザを起動するようになっている場合、通常の画面操作だけで解決するのは困難です。根本的な解決を図るには、プラグインの開発元に修正要望を送るか、プラグインのプログラムファイルを直接編集して通信処理を書き換える必要があります。
ただし、プログラミングの処理を行わない場合は、普段使っているブラウザでAmazonにログインした際に生成されるCookie情報(セッションIDなど)を開発者ツール等で抽出し、プラグインの設定画面へ直接貼り付ける回避策が存在します。ログイン画面のモーダルを経由せずにセッション情報を直接手動で渡すことで、外部ブラウザの自動起動を回避しながらハイライトデータの同期を完了させることができます。
 

まとめ

  1. モーダルから標準ブラウザへ離脱するのはアプリとブラウザ間で認証セッションが引き継がれないため

  2. プラグインの処理自体を変更するか手動でCookie情報を設定に入力することで回避可能

  3. 動作仕様上の制限であるため開発者へのフィードバックや手動設定による対応が必要となる

外部ブラウザへの切り替えが発生する場合は、システムの仕組みを踏まえた上でCookieの手動取得などの代替手段を適用して設定を進める形になります。