#API
17 件の記事
NIST CSF 2.0に学ぶ安全なAPIトークン設計|防御と検知から逆算する実装パターン
Personal Access Token(PAT)のようなAPIトークン機能を、NIST CSF 2.0の6つの機能(Govern・Identify・Protect・Detect・Respond・Recover)から逆算して設計する。DBスキーマ、トークン形式、スコープ検証、異常検知、Secret Scanning連携、失効までを実装例つきで整理する。
セキュアAPI 設計・構築・実装を貫く原則
『セキュアAPI 設計・構築・実装を貫く原則』の書評。APIのセキュリティを、設計から構築・実装まで一貫した原則として扱う一冊。認証・認可、TLS、シークレット管理、依存関係の脆弱性、CI/CDまで、APIのライフサイクル全体を「なぜ必要か」という脅威の観点から整理する。
APIハンズオンラーニング
『APIハンズオンラーニング』の書評。APIの設計から実装・テスト・運用まで、実際に手を動かしながら学べる実践的な一冊。設計原則やドキュメンテーション、バージョニング、セキュリティなど長期運用に欠かせないトピックを一通り押さえられ、既存APIの設計を振り返るチェックリストとしても役立つ。
APIスタイルの比較:REST・GraphQL・gRPC・Webhook・WebSocket・メッセージング
REST・GraphQL・gRPC・Webhook・WebSocket・メッセージングという6つのAPIスタイルを、通信モデルによる分類軸で整理し、それぞれの概要・設計観点・pros/consと使い分けの指針を横断的にまとめる。API設計でスタイルを選ぶときの地図となる記事。
GraphQLの採用判断とトレードオフ
GraphQL をいつ採用すべきかを、型システムや単一エンドポイント、オーバーフェッチ解消といった本質から整理します。向く場面と向かない場面、トレードオフ、N+1 などの運用、REST や gRPC との使い分けまで解説します。
gRPCの採用判断とトレードオフ
gRPC をいつ採用すべきかを、RPC・HTTP/2・Protocol Buffers の本質から整理します。向く場面と向かない場面、トレードオフ、運用の勘所、REST や GraphQL との使い分けまで解説します。
APIのバージョニング方式の比較:パス・クエリ・ヘッダー・ペイロード
APIのバージョニング方式を、パス・クエリパラメータ・ヘッダー・メッセージペイロードの4つの観点で端的に比較し、それぞれの利点・欠点と使い分けを整理する。
マスタリングAPIアーキテクチャ ―モノリシックからマイクロサービスへとアーキテクチャを進化させるための実践的手法
『マスタリングAPIアーキテクチャ』の書評。C4ダイアグラムやADRを使いながら、APIアーキテクチャのパターンやテスト、運用、セキュリティを解説する一冊。詳説というより概論に近く、モノリシックからマイクロサービスへとアーキテクチャを進化させる全体像をつかむのに向いている。
APIデザイン・パターン
『APIデザイン・パターン』の書評。APIの設計原則に始まり、標準メソッドを組み合わせるリソース指向や手続きを呼び出すRPC指向など、豊富なデザインパターンを紹介する一冊。実行可能性をはじめとする、良いAPI設計のための観点を体系立てて学べる。
API設計について学べるおすすめ本
API設計について学び直そうと、数冊をピックアップして読んだ本を紹介する記事。『Web API: The Good Parts』をはじめ、API設計の基礎から設計フェーズ、テスト戦略、実践的なデザインパターンまでを学べる書籍を、おすすめの読書順でリストアップする。
Web APIの設計
『Web APIの設計』の書評。インターフェースだけでなく、その手前の入り口からAPI設計を考えさせてくれる一冊。仕組みではなく「ユーザーが何をできるか」に焦点を当てる姿勢や、APIのゴールを洗い出すフレームワークなど、良いAPIを設計するための視点を与えてくれる。
Web APIテスト技法
『Web APIテスト技法』の書評。APIのテストを、5W1Hで問いを立てる発想や、テスタビリティを捉える10のPモデルといった枠組みから解説する一冊。テスト戦略・計画の立て方から、STRIDEや脅威ツリーによるセキュリティの観点まで、実務で役立つ視点が得られる。
GraphQLとは
API向けのクエリ言語であるGraphQLについて解説する記事です。Facebookが開発したGraphQLの、クライアントが必要なデータだけを柔軟に取得できる点や、単一のエンドポイントで完結する点、型システムを備えている点といった利点を、RESTとの違いにも触れながら紹介します。
LaravelでRestAPIをつくる
LaravelのResourceControllerと認証ミドルウェアを使い、JSONレスポンスを返すREST APIをつくる方法を解説します。
bitflyerのprivate apiを使ってビットコイン資産状況をslackに通知する Part2
async/awaitとbitFlyer private APIの認証、Slack連携を使い、ビットコインの資産状況を監視・通知する方法を解説します。
bitflyerのprivate apiを使ってビットコイン資産状況をslackに通知する
bitFlyerのprivate APIをNode.jsから叩き、HMAC-SHA256署名とSlack Webhookでビットコインの資産状況を通知する方法を解説します。
Web API: The Good Parts
『Web API: The Good Parts』の書評。Web APIの設計方針を学ぶうえで、まず読んでおきたい定番の一冊。エンドポイント設計やレスポンスの返し方など、API設計の基礎がまとまっており、設計に迷ったときに読み返したくなる。