タグ

ブックマーク / thinkit.co.jp (3)

  • KeycloakによるAPIセキュリティの基本

    連載の1回目である今回は、Keyclooakの基および、API保護が必要とされる背景について解説します。 サービスがより活発に利用されることを狙って、企業や公的機関によるサービスのAPI(Application Programming Interface)公開が広がっています。また、自組織内でもモバイルアプリケーション開発やシステム間連携を行いやすくするために、システムがAPIを提供することが多くなってきています。その際、APIは限られた人やシステムにだけがアクセス可能にする必要があるため、認証・認可のようなセキュリティ技術が必須になってきます。 認証・認可は、OAuth 2.0の枠組みに基づくことが一般的ですが、OAuthは自由度が高い仕様であるため、誤って実装・構築してしまうとセキュリティホールが作りこまれてしまいます。記事では、近年急成長を遂げている認証・認可サーバOSSである「

    KeycloakによるAPIセキュリティの基本
  • オブジェクト指向によるクラス設計

    クラス設計とは 今回のテーマは「クラス設計」です。クラス設計とは、設計書などに記載されている要件からクラス候補を抜き出し、クラスの属性と操作を決めて、クラス間の関連性を設計することを指します。 属性とはクラスのインスタンスが持つデータ定義のことです。クラスのフィールド、つまり変数にあたります。操作とはクラスのインスタンスの振る舞い(機能)のことです。クラスのメソッドにあたります。 ちなみに、クラス設計をしなくてもプログラムは動きます。例えばクラスを1つだけ用意し、処理の全てをそのクラスに書いても期待する動きをします。 しかし、それが得策ではないのは、実際の業務では仕様変更や機能追加、障害対応などが頻繁に発生するためです。クラス設計を行わずにクラス1つで全ての処理を行おうとした場合(クラスが1つというのは極端な例ですが)、当然ながらクラスのソースコード量は肥大化し、if文などの条件分岐もコー

    オブジェクト指向によるクラス設計
  • リアクティブシステムが注目を集める理由

    第1回となる今回は、「リアクティブシステム」が登場した背景や注目を集めている理由などの概略を紹介します。 リアクティブシステムとは何か? ここ最近、「リアクティブ」という言葉を耳にしたり、SNS上で目にしたりという機会が増えたのではないでしょうか? リアクティブは、目まぐるしく進化するソフトウェア構築技術の中で、次世代ソフトウェア構築のためのベースとなる技術の一つとして注目されています。しかし、ひとくちにリアクティブといっても、単にリアクティブと言ってみたり、リアクティブプログラミング、React.js、リアクティブストリームなど様々で、リアクティブの明確な定義が存在せず、その捉え方もまた様々です。そこで連載では「リアクティブシステム」にフォーカスして、「リアクティブシステム」とは何なのか、どうやって作るのか、「リアクティブシステム」によって誰がどんなふうに幸せになれるのかを紹介していき

    リアクティブシステムが注目を集める理由
  • 1