日々精進

新しく学んだことを書き留めていきます

ATOKのキーカスタマイズが無効になることがある

何がきっかけかわからないが、キーカスタマイズで日本語ONにCtrl+Shift+Insertを割り当てているがこれが効かなくなることがある。 以下の手順で直った。

・キーカスタマイズウィンドウを開く ・OKボタンをクリック ・ATOKプロパティのOKボタンをクリック

「ATOKプロパティのOKボタンをクリック」までやらないと直らないのでちょっとハマッた。

Windowsのパスワードを変更したらgit push等の時に「git remote: Invalid username or password」

パスワードがどこに保存されてるかわからず困ったが、 資格情報マネージャーに保存されてるらしい。 資格情報マネージャーを開いて、パスワードを新しいものに変更したら直った。 手順は以下参照。

参考: blog.hinaloe.net

環境毎に違うところをどうやって解決するか

システムの中で環境毎に変更しないといけない部分というのは必ずあると思うのでそれをどうやって解決するのかは大事なポイント。それによってデプロイのしやすさ・ビルド時間などが変わってくるので。 環境毎に変える必要がある部分は以下。

  • 外部システム、DB、Redisなどの接続情報
  • DBのデータ
  • JS(本番環境は難読化やminifyをするので)
  • 秘密鍵

特にJSと秘密鍵がやっかい。理由は以下。

  • JSはビルド時に環境毎にビルド成果物を分けるしかない
  • 秘密鍵はなるべくsecureなところに保管しないといけないのでcommitできない。置き場所に困る。

今のところ以下の方針にした。

  • 基本的にはdocker-composeで環境変数を定義して環境毎に変わるところを解決する。
  • ビルド時にクライアント側のビルド成果物を全環境分作り、docker imageに入れておく。docker起動時にその環境で使うものだけ所定の場所にコピーする。
  • 秘密鍵はセキュアなストレージ(S3)に置いておき、docker起動時にホストOSからダウンロードしてdocker内にコピーする。

パスワード付きzipのデフォルト暗号化方式(zipcrypto)は強度が弱い

暗号化zipはパスワード試行が高速に何回でもできるのでbrute forceアタックが可能。 GPUを使うと28億回/秒ぐらいのスピードで試行できるらしいので パスワードが数文字程度だと1日もあれば破れてしまう。 ただ、zipcryptoは鍵長が最大96bitなのでパスワードの文字数を13文字以上にしても意味ない。 なのでzipcryptoを使う場合の注意点は以下。

・パスワードの桁数は12にする ・数字・英字(大文字小文字)・記号などなるべく多くの文字種を使う

zipの暗号化方式としてはAES256も使えるが、これはUnix標準のunzipコマンドが対応しておらず、7zipなどのパッケージを インストールする必要があるという問題がある。 悩ましい。.

参考:

www.bizcompass.jp

www.dit.co.jp