01 / IT FOUNDATION
この講座で、何をできるようにするか。
認証・認可・最小権限・入力と出力の扱いを点検し、バックアップから復元して結果を確認する。
目安18時間。説明・調査・演習・成果物作成・レビューを含む学習計画です。本文を読むだけでこの時間の実習を完了したことにはなりません。進み方と経験に応じて調整します。
学習目標と確認ポイント詳しく見る
- 守る対象と脅威を整理するを説明し、守る対象とリスクの表を作る。
- 認証・認可・最小権限を説明し、権限表と検証結果を作る。
- 入力・出力と代表的なWebの弱点を説明し、境界ごとの対策メモを作る。
- 暗号化と秘密の管理を説明し、秘密情報の扱い表を作る。
- 更新と依存関係を説明し、更新管理メモを作る。
- バックアップと復元を説明し、復元手順と検証記録を作る。
ブラウザーで本文・アニメ・問題を確認できます。実機演習は会社が用意した学習環境を使い、Python・Linux・Git・DB等の準備状況を確認してから進めます。
Python・SQL・ログ・架空パケット表・テスト・APIのスターターと説明書を同梱しています。APIは認証・認可等を受講者が追加する未完成の学習用で、公開用完成品ではありません。
共通演習キットをダウンロード
02 / IT FOUNDATION
仕組みを理解し、手を動かして確かめる。
守る対象と脅威を整理する
詳しく見る
学習ブロック 1 / 目安3時間(説明・調査・演習・記録・レビュー)
まず何の情報や機能を、誰のどんな不正操作や事故から守るかを整理します。機密性、完全性、可用性を考え、すべてを禁止する案ではなく、業務が進む適切な制御を設計します。演習は自分の教材データと隔離環境に限定します。
予約システムの利用者情報、予約内容、管理機能、稼働を一覧にし、漏えい・改ざん・停止の影響を書く。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
認証・認可・最小権限
詳しく見る
学習ブロック 2 / 目安3時間(説明・調査・演習・記録・レビュー)
本人の確認と、対象操作の許可を別々に実装します。画面のボタンを隠すだけではAPIへの要求を止められないため、サーバーで対象ごとに確認します。管理権限を全員へ配らず、利用者、運用、アプリ等の必要範囲へ限定します。
利用者Aから利用者Bの予約IDを指定する教材ケースを確認し、拒否する条件をテストへ追加する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
入力・出力と代表的なWebの弱点
詳しく見る
学習ブロック 3 / 目安3時間(説明・調査・演習・記録・レビュー)
SQLインジェクション、XSS、CSRFなどは発生する境界と対策が異なります。入力値とSQL構文を分離し、表示時の適切なエスケープ、状態変更要求の検証等を組み合わせます。入力の文字を一律に消すだけで業務と安全性を満たすとは限りません。
演習用の文字列を表示してHTMLとして実行されないこと、SQLの値が構文として解釈されないことを確認する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
暗号化と秘密の管理
詳しく見る
学習ブロック 4 / 目安3時間(説明・調査・演習・記録・レビュー)
通信の暗号化、保存時の保護、パスワードのハッシュ化は目的が違います。秘密鍵、APIキー、セッション値等をログやGitへ残さない設計にします。秘密が漏れた場合は表示を消すだけでなく無効化・更新と影響確認が必要です。
設定とログの架空サンプルを分類し、記録してよい情報と伏せる情報を決める。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
更新と依存関係
詳しく見る
学習ブロック 5 / 目安3時間(説明・調査・演習・記録・レビュー)
OSやライブラリを更新しないまま使うと既知の問題を残すことがあります。一方、更新で動作が変わる場合もあるため、影響確認、テスト、戻し方を用意します。使用するバージョンや依存関係を把握できる状態にします。
演習アプリの依存一覧を作り、更新前の確認、テスト、復旧の手順を書く。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
バックアップと復元
詳しく見る
学習ブロック 6 / 目安3時間(説明・調査・演習・記録・レビュー)
バックアップが存在することと、必要なデータを復元できることは別です。対象、頻度、保存先、アクセス権、保持期間、目標復旧時点と時間を考えます。復元は元データと別の演習用の場所で行い、件数や内容で確認します。
同梱DBをバックアップAPIで別ファイルへ保存し、別名で復元して行数と合計を照合する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
権限と復元の確認条件を先に書く
権限表: 利用者A:Aの予約を参照・取消 利用者B:Bの予約を参照・取消 管理者:承認した業務範囲だけ代理操作 テスト:AがBのIDを指定 → 拒否、データ不変。 スターターは認証・認可未実装。上の条件を実装してから検証する。 復元演習:python3 sql_lab.py 期待:元の演習DBと別のDBへbackupし、ordersが2行と確認。 実務の目標時点・復旧時間・保存先の権限は別途設計する。
03 / IT FOUNDATION
仕事のアニメ:セキュリティ基礎を考える。
新人・アオイさんと先輩・ミナトさんの会話で、「セキュリティ基礎」を学びます。最初の場面は「まず何の情報や機能を、誰のどんな不正操作や事故から守るかを整理します。」。何を確かめ、どう対応するかを順に見ていきましょう。
まず何の情報や機能を、誰のどんな不正操作や事故から守るかを整理します。
約12秒ごとに場面が切り替わります。再生中も一時停止でき、「前へ」「次へ」で自分のペースで読めます。最終場面で停止します。
アニメの内容をまとめて文章で読む
1. 守る対象と脅威を整理する
アオイ:まず何の情報や機能を、誰のどんな不正操作や事故から守るかを整理します。
学習ポイント:守る対象とリスクの表
2. 認証・認可・最小権限
ミナト:本人の確認と、対象操作の許可を別々に実装します。
学習ポイント:権限表と検証結果
3. 入力・出力と代表的なWebの弱点
アオイ:SQLインジェクション、XSS、CSRFなどは発生する境界と対策が異なります。
学習ポイント:境界ごとの対策メモ
4. 暗号化と秘密の管理
ミナト:通信の暗号化、保存時の保護、パスワードのハッシュ化は目的が違います。
学習ポイント:秘密情報の扱い表
5. 更新と依存関係
アオイ:OSやライブラリを更新しないまま使うと既知の問題を残すことがあります。
学習ポイント:更新管理メモ
6. バックアップと復元
ミナト:バックアップが存在することと、必要なデータを復元できることは別です。
学習ポイント:復元手順と検証記録
04 / IT FOUNDATION
演習を完成させ、成果物をレビューする。
演習1
予約APIの権限と入力境界を点検し、改善前後をテストする。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
演習2
架空の設定・ログから秘密情報を除くルールを作る。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
演習3
DBを別の場所へ復元し、期待する行と合計が戻ることを確認する。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
正しい用語で説明できるか/入力と結果が対応しているか/正常だけでなく失敗する条件も扱ったか/他の人が再現できるか/残る課題を隠していないか。
05 / IT FOUNDATION
確認問題:答えより、理由を説明する。
全5問。選ぶと解説が表示されます。何度でも選び直せます。
回答済み 0 / 5問
06 / IT FOUNDATION
成果物を残し、理解と未確認を分ける。
架空データを使い、根拠と結果を自分の言葉でまとめます。回答とメモは自動保存・外部送信しません。残したい内容はコピーするか、成果物ファイルへ記入してください。
07 / IT FOUNDATION
説明・実装・記録を、一つの成果へつなげる。
認証・認可・最小権限・入力と出力の扱いを点検し、バックアップから復元して結果を確認する。
- 守る対象とリスクの表
- 権限表と検証結果
- 境界ごとの対策メモ
- 秘密情報の扱い表
- 更新管理メモ
- 復元手順と検証記録
08 / IT FOUNDATION
