Angular + Django(BFF) MFA認証 実装手順書

1. 目的 本手順書では、 Angular + Django(BFF) + AWS Cognito + MFA(TOTP) を使用した安全な認証機能を実装する。 本システムでは、 AngularはJWTを保持しない 構成を採用する。 JWTはDjango(BFF)のみが扱う。 2. システム構成 @startuml actor User rectan…

動作分析システム MFA導入手順書

BFF方式:SAM + Cognito + Angular + Django 1. 採用方針 本システムは以下の条件に該当する。 社外公開 機密データあり 管理者操作あり そのため、AngularでJWTを直接扱う方式ではなく、BFF方式を採用する。 BFF方式では、Angularはアクセストークン、IDト…

動作分析システム MFA導入手順書(Cognito + Angular + Django)

動作分析システム MFA導入手順書(Cognito + Angular + Django) 1. 目的 本手順書では、既存のRedmine認証を廃止し、AWS Cognito を使用した多要素認証(MFA)へ移行する。 対象システム: フロントエンド:Angular API:Django REST Framework DB:Amazon …

Django REST Framework の API テスト実装例

force_authenticate() を使用した認証付きテストの書き方 Django REST Framework(DRF)で API テストを実装する際、 self.client.login() を使用しているのに 401 Unauthorized になって困るケースがあります。 本記事では、DRF の APITestCase と force_au…

【実務で使える】Angular+Django開発を最速化する「screen.yaml起点」の自動生成戦略(完全テンプレ付き)

【実務で使える】Angular+NgRx+Django開発を最速化する「screen.yaml起点」の自動生成戦略 はじめに Webシステム開発では、以下のような課題がよく発生します。 画面とAPIの仕様がズレる 画面間のデータのつながりが不明確 UIレビューで何度も手戻りが発生…

【完全ローカル】Django開発のコード品質を一気に上げる最小構成(Ruff / mypy / pytest / pre-commit)

Django REST API を開発していると、こんな問題が起きがちです。 コードレビューに時間がかかる フォーマットや命名の指摘が多い バグがレビュー後に発覚する この記事では、コードを外部にアップロードせずに、ローカルだけで品質を底上げする方法を紹介し…

完成版 eslint.config.js

完成版 eslint.config.js // eslint.config.js // eslint.config.js const js = require('@eslint/js'); const globals = require('globals'); const tseslint = require('typescript-eslint'); const angular = require('angular-eslint'); const eslintCon…

【Windows対応】AngularにESLint + Prettierを最短導入する手順(Angular 19対応)

Angularプロジェクトで コードレビューに時間がかかる コーディングルールがバラバラ フォーマットの指摘が多い という問題がある場合、ESLint + Prettier を導入するだけで一気に改善できます。 この記事では、Windows(PowerShell / コマンドプロンプト)…

Django専用 レビュー基準書

Django専用 レビュー基準書 文書番号: ENG-CR-BACK-001版数: 1.0作成日: 2026-04-18対象: Django / Python / MySQL適用範囲: API、View、Service、ORM、トランザクション、バリデーション、テスト 1. 目的 本基準書は、Django / Python におけるコードレビュ…

Angular専用 レビュー基準書

Angular専用 レビュー基準書 文書番号: ENG-CR-FRONT-001版数: 1.0作成日: 2026-04-18対象: Angular / TypeScript適用範囲: 画面、コンポーネント、Service、状態管理、テンプレート、フォーム、テスト 1. 目的 本基準書は、Angular / TypeScript におけるコ…

【Cypress】モックしていないAPIでもwaitできる?正しい待ち方と設計パターン

はじめに Cypressでテストを書いていると、こんな疑問が出てきます。 モックしていないAPIでも cy.wait() できる? 実通信の完了をどうやって待つの? cy.wait(1000) ってダメなの? 結論から言います モックしていなくても wait は可能です。 ただし、必ず…

【Angular × Cypress】テストを“自動生成”する仕組みを作る(screen.yaml → テストコード生成)

はじめに Cypress でテストを書くとき、多くの現場でこうなります。 同じような一覧画面が大量にある 毎回テストを手書きしている 書き方がバラバラになる 修正コストが高い 特に業務システムでは、一覧画面・検索・詳細・CRUD が大量に存在します。 結論 …

【Angular × Cypress】一覧画面テストを最速で作る方法と自動生成戦略(モック設計まで完全解説)

はじめに Angular で構築された業務アプリに対して Cypress でテストを書く場合、 テストを書くのが遅い APIモックの扱いに悩む 画面変更でテストが壊れやすい といった課題にぶつかることが多いです。 特に一覧画面は数が多く、毎回ゼロからテストを書くの…

Django REST API + pytest + Moto + OpenAPI + Schemathesis 環境構築手順書

Django REST API + pytest + Moto + OpenAPI + Schemathesis 環境構築手順書 1. 目的 本手順書は、以下の構成をローカル環境で動かすためのセットアップ手順をまとめたものです。 Django REST API pytest pytest-django Moto による S3 / SQS モック drf-spe…

Django REST API(pytest + Moto + OpenAPI + RDS対応)環境構築手順

1. 前提 以下がインストール済みであること Python 3.11 以上 pip virtualenv(推奨) 2. プロジェクト作成 mkdir myproject cd myproject python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate 3. 依存関係インストール pip ins…

【実務で使える】サイバーセキュリティKPIレポートの作り方

はじめに 企業におけるサイバーセキュリティ対策は、単なる技術課題ではなく「経営課題」です。 しかし現場では、以下のような課題がよく見られます。 脆弱性の件数だけを報告している 経営判断につながる指標が不足している リスクの全体像が見えない 本記…

Angular一覧画面のNgRx設計はこう整理する(クラス図とシーケンス図で理解するSPAドキュメント)

クラス図とシーケンス図で理解するSPAドキュメント はじめに Angularで一覧画面を作ると、画面表示そのものは比較的すぐに作れても、少し機能が増えた瞬間に構造が複雑になりがちです。 たとえば、一覧画面では次のような処理がよく登場します。 初期表示で…

nginxで実装すべき“現代的なXSS対策”まとめ

かつて XSS 対策として利用されていた X-XSS-Protection ヘッダ。 しかし現在の主要ブラウザではサポートが終了しており、むしろ 設定しない方が良いケースもある ことをご存じでしょうか? 本記事では、現代のWebアプリにおいて推奨される実践的なXSS対策 …

【AWS SES】既存S3を使ってHTMLメール画像を安全に配信する[CloudFront(OAC)対応 CloudFormationテンプレート完全版]

AWS SES で HTML メールを送信する際、画像を どこから・どうやって配信するか は、以下に直結します。 メールの表示率 スパム判定リスク セキュリティ 運用のしやすさ 本記事では、既存の S3 バケットを流用しながら、 S3 を 非公開のまま CloudFront の Or…

【AWS SES】既存S3を使ってHTMLメールに画像を表示する[〜S3 + CloudFront + HTTPS(OAC対応・実務ベストプラクティス)〜]

HTMLメールを AWS SES で送信する際、画像をどのように配信するかは、表示率・到達率・セキュリティに大きく影響します。 本記事では、 既存の S3 バケットを流用 S3 は非公開のまま CloudFront + HTTPS で画像配信 Python + Lambda で SES 送信 という、実…

CodeStar Connections とは何か GitLab と AWS CI/CD を安全につなぐ仕組みを整理する

CodeStar Connections とは何か GitLab と AWS CI/CD を安全につなぐ仕組みを整理する はじめに AWS で CI/CD を構築する際、GitHub や GitLab といった 外部 Git サービスとの連携は避けて通れません。 以前は、 Personal Access Token を発行して CodeBuil…

GitLab × CodeBuild 連携 複数リポジトリをブランチ指定で Build → ECR Push する構成(IaC対応)

複数リポジトリをブランチ指定で Build → ECR Push する構成(IaC対応) はじめに 複数のアプリケーションを Docker 化して運用していると、 リポジトリごとにビルド条件が違う ブランチを指定してビルドしたい 環境ごとに ECR の push 先を切り替えたい と…

リスク分析システムER図を読み解く

リスク分析システムER図を読み解く ― なぜこの構造でなければならないのか ― 本記事では、**リスク分析システムのDB設計を表現したER図(PlantUML)**をもとに、 なぜこのテーブル構成になっているのか 各エンティティがどんな役割を持つのか どうやって「説…

リスク分析システムの画面一覧

まず最初に、本システムで必要となる画面を 役割別に一覧化します。この一覧を見ることで、 どのような画面が存在するのか 各画面が何のためにあるのか を一目で把握できます。 画面一覧(役割別) 画面区分 画面名 主な目的・役割 共通・入口 ログイン/認…

脆弱性リスク分析システム 機能一覧をChatGPTをつかって作成してみた

【結論】CVSSだけでは足りない。 「損害・脅威・攻撃」の3層で考えると、リスクは“説明できる”ようになる 脆弱性対応において、 CVSSが高い=危険 という説明だけでは、開発チームや非セキュリティ担当にはなぜ優先すべきかが伝わりません。 そこで有効なの…

【設計図付き】FOSSA の分析結果をリポジトリ単位で GUI 表示する API 設計(GitLab / OSS 脆弱性管理)

はじめに OSS を利用した Web アプリ開発では、**「どのリポジトリに、どんな脆弱性・ライセンス問題があるのか」**を開発者やセキュリティ担当が GUI で即座に把握できることが重要です。 本記事では、以下の前提で FOSSA の分析結果を GUI に表示するため…

品質重視で「設計原則 → 構成 → 具体コード → 運用ルール → 自動生成のやり方」

0. 何を“自動化”するのか(目的を明確化) E2Eテスト作成には3種類の作業があります。 要素の特定(Selectors) 画面操作(Actions) 検証(Assertions) 量産を阻むボトルネックは主に①②です。だから自動化の本命は: ①②を“ページごとに土台として自動生成”…

TODO LISTのテストコードサンプル

フロントエンド開発において、「TODOアプリ」×「E2Eテスト」 は学習・実務の両面で非常に相性が良い題材です。 この記事では Cypress を使った TODO LIST のE2Eテストコードの実例を、実務でそのまま使える形で紹介します。 前提 Cypress が導入済みであるこ…

Cypress 導入手順書(最短5分)

フロントエンドのE2Eテストを簡単に導入できる Cypress の最小構成・npm限定の導入手順をまとめます。 Angular / React / Vue いずれのプロジェクトでも共通で使えます。 前提条件 Node.js がインストール済み(LTS 推奨) npm が使用可能 プロジェクトのル…

【初心者向け】ゼロトラストとは何か?導入時に押さえるべき考え方をやさしく解説

テレワーク、クラウド、SaaSの普及により、「社内ネットワーク=安全」という前提はすでに崩れています。 その流れの中で注目されているのが ゼロトラスト というセキュリティの考え方です。 この記事では、情報処理推進機構(IPA)が公開しているゼロトラス…