Prohibited-actions rule blocks user-authorized local VPN login script (OTP supplied by user, secret never leaves the device)

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 10, 2026

Context

I manage a client's IT infrastructure and connect to it through a Sophos SSL VPN that requires a TOTP code. With Claude Code I built a small PowerShell script for this: the account password is stored DPAPI-encrypted on my own Windows machine, the script decrypts it locally and passes it together with the OTP to Sophos Connect's sccli.exe. Claude never sees the password. The only value Claude handles is the six-digit code I type into the chat, valid for 30 seconds.

Until recently Claude Code ran this script on request (pwsh -File Connect-Vpn.ps1 -Einmalcode 123456) and then continued working on the servers behind the tunnel.

Problem

Claude Code now refuses, citing the prohibited-actions rule "Creating accounts, or entering passwords to authenticate", which applies "when the user explicitly asks for them, supplies all the details, or says they authorize it." Starting my own local script with my own one-time code is treated like entering credentials into a third-party website.

Impact

For this work I now have to switch to OpenAI Codex, which runs the same command without issue. I would prefer to stay with Claude Code.

Suggestion

Distinguish between authenticating on a third-party site and running a user-created script on the user's own machine where the secret never leaves the device. A per-project or per-session opt-in (e.g. in settings.json) would be sufficient.

Related: #78985 (same rule blocking sandboxed login testing), #86435 (unscoped deletion rule).

View original on GitHub ↗