カテゴリー
KeePass Security

KeePass URL Override

KeePass には URL Override とそこで値を参照する Placeholders という機能がありますがシンプルな実装なので頭をひねらないといけません。

デフォルト値を設定する

デフォルト値を設定したい場合はエントリーの値が空であっても placeholder が空でないものがあるので注意が必要です:

{URL}, {BASE}keepass-url-override-test:keepass-url-override-test:/keepass-url-override-test://
{URL:SCM}, {BASE:SCM}keepass-url-override-testkeepass-url-override-testkeepass-url-override-test
{URL:PORT}, {BASE:PORT}-1-1-1
{URL:PATH}, {BASE:PATH}
//
{S:Name}{S:Name}{S:Name}{S:Name}

サンプル

コマンドラインにパスワードが残るのでまずい場合もありますがしゃーない。

putty

ssh:

cmd://"{APPDIR}\putty.exe" -ssh "{USERNAME}@{BASE:HOST}" -P {BASE:PORT} -pw "{PASSWORD}" {T-REPLACE-RX:/{S:putty}/\{S:putty\}//}

Save additional command line arguments in field named “putty”.

ssh with ppk:

cmd://powershell -NoProfile -WindowStyle Hidden -Command "$uri = [uri]\"{URL}\"; $tmp = New-TemporaryFile; [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String(\"{T-CONV:/{S:ppk}/Base64/}\")) | Out-File -encoding ASCII $tmp.FullName; &putty {USERNAME}@$($uri.Host) -P $(If ($uri.Port) { $uri.Port } else { '22' }) -i $tmp.FullName; Start-Sleep -s 15; Remove-Item $tmp.FullName -Force"

Save ppk’s file content in field named “ppk”.

rdp

cmd://cmd /c "cmdkey /generic:TERMSRV/{BASE:HOST} /user:{USERNAME} /pass:{T-REPLACE-RX:/{PASSWORD}/(.)/^$1/} && start /b mstsc /v:{URL:RMVSCM} && timeout /t 15 /nobreak && cmdkey /delete:TERMSRV/{BASE:HOST}"

FileZilla

https://wiki.filezilla-project.org/Command-line_arguments_%28Client%29

どうもエスケープに対応していないようなので、ユーザー名とパスワードに @ や : などは使えないようです。
https://forum.filezilla-project.org/viewtopic.php?t=23055

ftp:

cmd://"%ProgramFiles%\FileZilla FTP Client\filezilla.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/21/}"

ftps:

cmd://"%ProgramFiles%\FileZilla FTP Client\filezilla.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/990/}"

ftpes:

cmd://"%ProgramFiles%\FileZilla FTP Client\filezilla.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/21/}"

sftp:

cmd://"%ProgramFiles%\FileZilla FTP Client\filezilla.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/22/}"

WinSCP

https://winscp.net/eng/docs/commandline

https://winscp.net/eng/docs/session_url#special

ftp:

cmd://"{ENV_PROGRAMFILES_X86}\WinSCP\WinSCP.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/21/}"

WinSCP で FTP + SSL が安定しないことがあります。

ftps:

cmd://"{ENV_PROGRAMFILES_X86}\WinSCP\WinSCP.exe" "{URL:SCM}://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/990/}"

ftpes:

cmd://"{ENV_PROGRAMFILES_X86}\WinSCP\WinSCP.exe" "ftp://{T-CONV:/{USERNAME}/Uri/}:{T-CONV:/{PASSWORD}/Uri/}@{URL:HOST}:{T-REPLACE-RX:/{BASE:PORT}/^-1$/21/}" /explicit

See

コメントを残す

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