cli-kintone (kintoneコマンドラインツール) v0 をプロキシ環境で使う方法

私の所属する会社では、社内ネットワークでプロキシサーバーを利用しています。

この環境で cli-kintone(kintoneコマンドラインツール) を実行しようとすると、エラーになって使えない!

cli-kintone が kintone環境に接続できないようです(;△;)

 

データ移行にどうしても使いたい!!

困ったので調べてみました。

 

概要

cli-kintone はGo言語で書かれています。

Go言語で書かれたプログラムは、環境変数の設定を利用しているとのこと。

なのでcli-kintone利用のために環境変数へプロキシ設定を入れれば良いようです。

 

※ここからの具体例はすべてWindowsです。手元に他OSない&使ってないので調べてません。。。

検証環境:Windows7

 

 

環境変数を設定する

設定するのは、ユーザー環境変数またはシステム環境変数です。

環境変数はシステムのプロパティの詳細設定から呼び出せます。

 

設定する値は以下の通り。

“HTTPS_PROXY=https://[ホスト名]:[ポート番号]”

 

ちなみに私の会社ではプロキシサーバーの情報がIPアドレスで展開されていたので、実際には↓でした。

“HTTPS_PROXY=https://[IPアドレス]:[ポート番号]”

 

また、ユーザー名やパスワードが必要な場合は、

“HTTPS_PROXY=https://[ユーザー名]:[パスワード]@[ホスト名]:[ポート番号]”

となるようです。

 

自分の会社用PCは、この設定を一度いれておけば安心ですね!私はユーザー環境変数に入れておきました。

 

 

cli-kintone利用時だけ設定

自社での設定は乗り越えましたが、その後すぐお客様先での移行作業(リハ)でも同じ罠にハマりました。。。

お借りした作業端末で環境変数を触るのはリスクが高すぎるので、環境変数を触らずにツール実行時だけ一時的に変更したい!

 

・・・調べたらコマンド1つでできました!!

 

set HTTPS_PROXY=[ホスト名]:[ポート番号]

※しつこいですがWindowsの場合です。

 

設定した値の確認は、下記コマンドで可能です。

set HTTPS_PROXY

 

このコマンドを打ってから、cli-kintoneを実行すればいつも通りに使える♪

設定したプロキシ情報は、コマンド実行したコマンドプロンプト上でのみ有効です。

データ移行の本番作業で一時的に利用したい設定したい場合等は、他への影響がなく安心ですね。

 

 

おまけ

ついでに、お客様環境では別の罠にもはまりました。

プロキシサーバ経由の通信はブラウザのみに制限しているとのことで、cli-kintoneはアクセスできなかった(ToT)

情シスと調整してなんとかなったのですが、このような場合もあるので事前確認が必要ですね。

 

 

参考リンク

http://blog.onodera.asia/2016/03/gohttphttps.html

 

 

情報に間違いがあったら、コメントでお知らせください。

表示されたエラーメッセージは下記の通りです。

Get https://subdomain.cybozu.com/k/v1/form.json: dial tcp_IPアドレス_: i/o timeout

実行後しばらく反応なくて、その後タイムアウトとなりました。。。

 

私の環境では、このようになりました。

昔の投稿への返信ですが…参考になるナレッジありがとうございます!

ちなみに、cli-kintone v1.x.x 以降でプロキシ設定をするには --proxy オプションで指定するようです!
https://developer.cybozu.io/hc/ja/articles/10663181361689#option
環境変数の HTTPS_PROXY では、プロキシ設定できなかったので共有します。
ちなみに、cli-kintone v1.2.0 で確認しました。

cli-kintone v1.2.0以前ではproxyを突破できるのですが、

cli-kintone v1.2.0では、今のところproxyを突破できません。謎。

判明次第ここに戻ってこようと思います。

cli-kintone v1.2.0のkeyフィールドで更新が使いたいw

cli-kintone v1.4.0 で、ユーザー認証が必要なプロキシサーバーにも対応したようです!

こんな感じに書くみたいです。

cli-kintone.exe record export --base-url https://サブドメイン.cybozu.com --app アプリID ^--api-token APIトークン ^--proxy http://ユーザー名:パスワード@プロキシサーバーのアドレス:ポート番号

参考:https://cybozu.dev/ja/kintone/sdk/backup/cli-kintone/#option-export

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。