Copyright Nikkei Inc. All rights reserved. #nikkei_tech_talk 日経内で新規Webメディアサービスを立ち上げるには API Server Web Browser Webチームでは CDN(Fastly Service) とアプリケーションサーバ の構築を担当する DB ※このあたりは かなり簡略化しています CMS App Server CDN (Fastly) - コンテンツ(記事)の数は多い - インタラクティブな要素は少ない - 状態を持つコンポーネントも少ない - SEO も重要 (さきほどの社内報は違う) - API サーバがブラウザから直接アクセス する前提の設計ではないところがある - Server Side Renderirng で CDN のキャッシュ を活用する - SPA (Client Side Rendering) にする強いモチ ベーションはない 記事データ, … HTML, … HTML, … 8 構成 アプリケーション設計
Copyright Nikkei Inc. All rights reserved. #nikkei_tech_talk Fastly による認証状態のチェック(社内報) ● 要件: 権限が無くなったユーザ(例: 退職者)からの社内報へのアクセスはブロックしたい ● 前提: ログイン後のユーザはトークンが Cookie にセットされる ● リクエストに含まれるユーザのトークンに不正がないか検証する処理を実装したい ○ トークンにも期限の情報が含まれているのでそのうち無効になるが、その期限内に管理サーバ側で権限を取り消した場 合もブロックしたい ● Fastly Service から API Server のトークン検証用 API を呼び出すことでチェックしている ○ アプリケーションサーバでチェックすると、全リクエストをFastlyのバックエンドに通さないといけなくなり HTTP キャッシュを活用できなくなる Web Browser App Server CDN (Fastly) API Server ②トークンの検証 ③ページの取得 17 ①ユーザリクエスト 管理 Server HTTP Caching 以外の用途でも認証などの仕組みに CDN を活用