Spring FrameworkとDIについて Oct 3, 2016 ( Feb 11, 2022 更新 ) DIのモチベーション ※ 参考: Spring徹底入門 CHAPTER2 一定規模以上のアプリケーションを開発するとき、各モジュールごとに実装を進めていくやり方が取られる。 例えば以下のようなインターフェースが必要になる場合。 UserService UserRepository PasswordEncoder UserServiceインターフェースを実装するUserServiceImplというクラスを実装する場合、 class UserServiceImpl implements UserService { public UserServiceImpl(DataSource dataSource) { this.userRepository = new UserReposito
今回は、Spring Bootのメイン機能の一つであるAutoConfigureの仕組みを紹介したいと思います。 Spring Bootを利用すると、簡単なアプリケーションであれば開発者がBean定義を行わなくてもSpringアプリケーションが作成できてしまいます。これはSpring Bootの最大の特徴ですが、Springアプリケーションを構築する上でBean定義そのものが不要になったというわけではありません。 Spring Bootが登場するまで開発者がコツコツBean定義していた部分を、Spring Bootが提供しているAutoConfigureという仕組みが単に肩代わりしてくれているだけなのです!! 前提バージョン Spring Boot 1.4.1.BUILD-SNAPSHOT (投稿時点のスナップショット) Spring Framework 4.3.3.BUILD-SNAPS
JSON Web Token(JWT)について調べていたら、JWTは絶対に使ってはいけないとかいろいろ書かれていて、使ってよいか良くわからなかった。 なので以下の点を調べてみました。 JWTはなぜ使ってはいけない、と言われているのか JWTの代替案はあるのか なお、私はただのフロントエンジニアでセキュリティの専門家ではないので素人の個人的見解です。注意してください。 TL;DR JWTは間違えやすく、脆弱になりがち JWTの代替はPASETOが良さそう JSON Web Tokenとは JSON Web Token(JWT)はセキュアなトークンを発行するための標準仕様です。 個人的に以下の点が特徴的だと思います。 標準仕様 仕様がシンプル 任意のデータをトークンに含められる トークンの偽造、否認は出来ない 暗号化されていないので中身は簡単に見られる 署名アルゴリズムが選択可能 JWTの仕様
注: 本稿は元はJSON Web Tokens(JWT)について書いたものですが、JWTはJavascript Object Signing and Encryption(JOSE)のサブセットであるため、以下の批評はどちらかというとJOSE全体に焦点を当てています。 もし既にJavascript Object Signing and Encryption(JOSE)を実装することを決めているなら、それがJSON Web Tokens、JSON Web Encryption(JWE)、JSON Web Signatures(JWS)のいずれであっても、その決断に疑問を持つべきです。間違いを犯そうとしている可能性があります。 この投稿に書いたことはすべて、RFC 7519、RFC 7515、そしてRFC 7516に則っています。将来、新規のRFCでは以下に挙げるような欠陥はなくなっている可能
NEW: get the JWT Handbook for free and learn JWTs in depth! What is JSON Web Token? JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object. This information can be verified and trusted because it is digitally signed. JWTs can be signed using a secret (with the HMAC algorithm) or a publ
概要 Spring SecurityとSpring Bootを利用して簡単なRest APIのデモアプリケーションを実装しました。 記事の前半はSpring Security周りの実装、後半がコントローラの実装とそのテストコードについて説明しています。 ソースコードはrubytomato/demo-security-spring2にあります。 環境 Windows 10 Professional Java 1.8.0_172 Spring Boot 2.0.2 Spring Security 5.0.5 参考 Spring Security Reference Hello Spring Security with Boot Spring Boot Reference Guide デモアプリケーションの要件 認証の仕方 このデモアプリケーションは、メールアドレス・パスワードで認証を行います。
概要 この記事は、以前に投稿した「[Spring Security with Spring Boot 2.0.1で簡単なRest APIを実装する] (https://qiita.com/rubytomato@github/items/6c6318c948398fa62275)」で利用したデモアプリケーションをJWT(Json Web Token)に対応させたときの変更点を説明する記事です。 JWTの仕様については詳しい記事がたくさんありますのでここでは触れません。 ソースコードは[rubytomato/demo-security-jwt-spring2] (https://github.com/rubytomato/demo-security-jwt-spring2)にあります。 環境 Windows 10 Professional Java 1.8.0_172 Spring Boot
Starting from this chapter?Clone the application repo and check out the build-api branch: git clone git@github.com:auth0-blog/menu-api-spring-boot-java.git \ menu-api \ --branch build-apiMake the project folder your current directory: cd menu-apiThen, install the project dependencies using Gradle: ./gradlew --refresh-dependenciesFinally, update the application.properties file in src/main/resources
APIサーバとして作っているSpringBootアプリに認証の仕組みを入れようと思い、試行錯誤した内容をまとめておきます。 spring-securityを入れればよろしくやってくれるんじゃないの?と軽く思っていたのですが、思ったより長い道のりになってしまいました。 ID/PWでtokenを発行して、tokenを元にその他のAPIを呼び出せるか制御したい というのがやりたいことです。 いろいろ調べるとJWTという技術が使えそうだと判明して、「Implementing JWT Authentication on Spring Boot APIs」というサイトを参考に実装しています。 JWT(Json Web Token)とは 以下の3つのJSONデータを.で結合してできた文字列を、URLでも安全に送れるように暗号化したものです。これをtokenとして利用します。ジョットと読むらしいです He
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く