Windows上のOpenConnectでSSO(Single Sign On)なログインを行う

投稿者: | 2月 6, 2026

きかっけ

大学のVPNがCiscoのAnyConnectを使用しているのですが、公式のクライアントを使用するとローカルの接続も禁止されてしまいます。NASやプリンターに接続できなくなり、実用に耐えないレベルでした。そのため、OpenConnect GUIを使用していたのですが、2月からSSOに切り替わり使用できなくなってしまいました。

OpenConnect GUIでの症状と原因

ログを見ると

Please complete the authentication process in the AnyConnect Login window.
No SSO handler
Failed to complete authentication

となってしまっています。
どうやらOpenConnect本体はSSOに対応しているようですが、OpenConnect GUIがSSOに対応していないため発生しているようです。
SSOに必要な機能を提供するものとしてopenconnect-ssooc-ssoがあります。openconnect-ssoはWindowsもギリギリ対応しているっぽさそうでしたが、古そうだったので使用しませんでした。oc-ssoは比較的新しくシンプルですが、Windowsには非対応です。

Pythonスクリプトと使い方

そこで、oc-ssoを元にしつつ、Windowsでも使えるようにChatGPTに改造させました。完全にChatGPT任せなうえに、ロクにデバッグもしてないので自己責任でお願いします。

ダウンロードは下から
oc-sso-win.py

管理者権限でPowerShellを開き

python oc-sso-win.py https://example.com --openconnect "C:\Program Files\OpenConnect\openconnect.exe" 

こんな感じで実行すればEdgeが起動します。そこでログインを行えば接続できます。

OpenConnect GUIと統合したかった

OpenConnect GUIのフォルダを見ると、openconnect.exeとopenconnect-gui.exeが存在し、openconnect-gui.exeがopenconnect.exeのフロントエンドだと思い、openconnect.exeを先程のPythonスクリプトのラッパーに変更してみたのですが、単純なフロントエンドではないらしく、動作が変わらなかったので諦めました。

おわりに

ローカルの通信も許可しないとか大学のVPNは○○。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)