サーバーが守るもの
NarraLeaf Team サーバーが何を守るか、そしてデプロイを計画する際に据えるべき二つの決定
NarraLeaf Team サーバーはアカウントを保持し、誰がどのプロジェクトに到達できるかを決定します。このページは、デプロイを計画する際に据えるべき内容です。それ以外の部分、受け入れられているリスクを含めて、はリポジトリのセキュリティ文書にあります。
計画の基礎となる二つの決定
サーバー上のすべてのアカウントは、その上のすべてのプロジェクトに到達できます。 プロジェクトごとのアクセス権はありません。ある人に見せてはならないプロジェクトは、二台目のサーバーに置くべきものです。誰かを止める方法は、そのアカウントを止めることです。
どのアカウントも、どのプロジェクトでも一覧から外すことができます。 リポジトリとその中のすべてのバージョンは影響を受けず、同じリポジトリ id で再び登録すればそのプロジェクトは復元されます。失われるのは、そこに残されていたコメントです。一覧から外す前に nlteam project list からリポジトリ id を読み取ってください。外した後は、一覧上のどこにもそれを保持しているものがなくなるためです。
この接続が何の上に成り立っているか
Studio がサーバーに向けて話すことはすべて、一つの証明書の背後にある一つのポートに到達します。組織が独自の証明書を用意していない限り、サーバーはその証明書を自ら発行し、フィンガープリントは、信頼しようとしているその接続とは別の経路で、人間によって一度だけ照合されます。
その最初の照合の後、Studio はそのとき示された認証局を保持し続け、後になって別のものを提示するサーバーを拒否します。
人々が使う名前に対する証明書を既に持っている組織は、この照合をまるごと不要にできます。サーバーをデプロイするを参照してください。
トークンが証明すること
Studio はパスワードをトークンと引き換え、それをすべてのリクエストで提示します。サーバーはそのたびに次を検査します。
- 署名。サーバーが公開している鍵と照合します。
- 発行者、対象者、そして有効期限。
- そのアカウントがまだ存在し、無効化されていないかどうか。
- そのトークンが、そのアカウントのアクセス権が取り消される前に発行されたかどうか。
したがって、三十日間有効なトークンだからといって、取り消されたアカウントがそのまま三十日間機能し続けるわけではありません。
誰が何をできるか
| 保持者 | 到達できるもの |
|---|---|
| あるアカウント | サーバー上のすべてのプロジェクト、およびそれらの上のコメント |
| 一人の運用担当者 | アカウント、設定、署名鍵、そしてアクセスの記録 |
| サーバーのディレクトリを保持する者 | すべて。どのアカウントに対してもトークンを発行できる鍵を含む |
最後の行は欠陥ではありません。サーバーは自分自身のディレクトリから復元され、それが復元できる唯一の場所であるため、デプロイはそのディレクトリを、それが置かれているマシンの権限によって守ることになります。
脆弱性を報告する
GitHub のセキュリティ勧告フォームを通じて非公開で報告してください。脆弱性について公開の issue を作成しないでください。