自分に何かあった時の手順と情報を残すことを真面目に考えてみる。
死んだ時とか、自分が何もできない状態になった時に、どうやって対処するか。(自分以外の誰かが誰かにパスできるように)
基本的にはソースコードと最低限の手順書・情報と必要なアカウント情報があればなんとかしてくれるでしょ(こまかな仕様はソース読むなり顧客やその他関係者に聞いてください)スタイル。
前提
- 家族か誰か信用できる人がいる
- 案件や状況によっては、そもそもこんなこと考えずとも適切な権限管理と共有ができているべき
- 可能な限りアカウント自体の共有ではなく、権限を共有する
- 実際に事が起きた時にはパスワード管理ソフトに入れた手順書に従ってアカウントや権限を外部の業者等に共有してもらう
- 業務委託等の契約や費用の話は横に置いておく(エンジニアレベルでパスできる状態をゴールとする)
利用サービス等
- パスワード管理ソフト : プライベートな家族用、管理画面とかサーバ系以外の情報
- GitHub : ソースコード等
- GitHub の Secrets : デプロイ系の情報
- GCP の KMSで暗号化 : デプロイ系の情報の暗号化
パスワード管理ソフト
- 共有可能である程度高機能なやつ使って信頼できる人に共有しとく
- 緊急時の手順書とかもここに入れておく
- 各サービスのアカウント等でサービスごとの権限管理で共有できるものはサービスごとに適切に権限を共有しておく。
- 各サービスの権限共有機能などでコントールできる物に関してはここで自分のアカウントは共有しない。
- サービスごとにサービスの権限管理の機能など利用して共有しとく場合、非エンジニアの場合どうやるんだっけ?ってなりそうなので手順書をそえておく。
- https://www.gizmodo.jp/2020/11/best-password-managers-wirecutter.html
GitHub / GitHub の Secrets
- ソースコード : WEB系システム開発なのでほぼ100% GitHub でソース管理している
- GitHub Actions でのデプロイに必要な情報は Secrets に。 (GitHub actions でデプロイ前提)
- Account Settings > Successor settings がまさしくこの用途
GCP の KMSで暗号化
- 用途としてGithub の Secrets とかぶるのでどちらかに寄せてもいいかもしれない
- KMS以外でも使えるツール : mozilla/sops
- GitHub のシークレットに KMSの認証情報を入れて、 GitHub Actions で sops 使って複合化して使ってるけど、全部 Secrets に入れてもあんまりリスクは変わらない気はする。併用した方が日頃の手間は少ない気がする