Posts
V字モデルとは? ウォーターフォール開発のプロセスとテストの関係
ソフトウェアはたくさんのプロセスを経て開発されます。 ソフトウェアテストは、ソフトウェア開発のプロセスの中の1つの工程です。 テスト手法を学ぶ前に、ソフトウェア開発全体について理解をすることで、大局的な視点を持つことができます。
read more
Posts
ソフトウェアテストとは:挙動と仕様を比較する
ソフトウェア開発において品質の保証は非常に重要なトピックです。 開発したソフトウェアがユーザーの要求を満たすかどうかを確かめるために、ソフトウェアテストが行われます。 この記事では、ソフトウェアテストとはなにか、どのように実施するかについて解説します。
read more
Posts
Cookie: ステートレスな HTTP でセッションを実現する仕組み
この記事では、ステートレスな HTTP 通信でユーザーの状態を維持する方法について説明します。 Cookie を利用したセッション管理の基本的な概念と、それを実現するための具体的な技術について解説します。
read more
Posts
Spring Security を使った認可の実装例
認可の実装には、① HTTPのリクエストを制限する ② Javaメソッドの実行を制限する ③ 動線を非表示にする の3つの方法があると解説しました。 このレクチャーでは、それぞれの方法について Spring での実装例を見ていきましょう。
read more
Posts
理論編:認可の概要と実現方法を理解しよう
ユーザーに権限を与えることを認可といいます。 認可によって、ユーザーごとに実行可能な処理を制限できるようになります。 このレクチャーでは、認可の概要と実現方法を解説します。 認可の実現方法にはどのような方法があるのか、また、それぞれの方法にどのような特徴があるのかを理解しましょう。
read more
Posts
理論編:パスワードを安全に保存しよう
パスワードをデータベースに保存するときは、平文で保存していはいけません。 平文とは、ユーザーの入力値そのままの文字列のことです。 パスワードを平文で保存すると、データベースがハッキングされたときにユーザーのパスワードが漏洩してしまいます。
read more
Posts
IntelliJ でなぜかエラーが消えないときは:Invalidate Caches
IntelliJ でなぜかエラーが消えないときは、Invalidate Caches を試してみましょう。
read more
Posts
理論編:弱いパスワードを設定できないようにしよう
強いパスワードを設定することは、アカウントのセキュリティを高めるために重要です。 しかし、ユーザー自身がパスワードを設定できるアプリケーションでは、ユーザーの入力によっては弱いパスワードが設定されてしまう可能性があります。 そのため、アプリケーション側で弱いパスワードを設定できないように強制することが必要です。 このレクチャーでは、強いパスワードの条件を確認し、弱いパスワードを設定できないようにするための方法を解説します。
read more
Posts
read more
UserDetails と UserDetailsService:ユーザー情報を扱うコンポーネントを理解しよう
UserDetails
と UserDetailsService
は、Spring Security の挙動をカスタマイズする際に登場するインターフェースです。 このレクチャーでは、これらのインターフェースがどのような役割を持つか、また、どのように実装クラスを作成するかを解説します。
Posts
セッションをセキュアにするための要件を学ぼう
Web アプリケーションでは、セッションを利用してユーザーのログイン状態を管理することが多いです。 セッションの管理は、セッションIDと呼ばれる一意の識別子を使って実現されます。
read more