冬休みの課題図書 ============== ## SDN * [Web] [SDN 温故知新 - Qiita](https://qiita.com/hichihara/items/d6ede5ec8ad0ae35b9e1) * 2017/12/08 市原さん@NTT研究所(当時)の記事 * 古い記事だが、SDNの概要、SDN Controllerの製品紹介、データプレーン、高速化技術等について分かりやすく解説しているので、入門としてよい記事 * VMWare NSX-T は OpenStack 用につくられたSDNコントローラとのこと * [書籍] [Software-Defined Networks ソフトウェア定義ネットワークの概念・設計・ユースケース](https://www.amazon.co.jp/Software-Defined-Networks-%"%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E5%AE%9A%E7%BE%A9%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E6%A6%82%E5%BF%B5%E3%83%BB%E8%A8%AD%E8%A8%88%E3%83%BB%E3%83%A6%E3%83%BC%E3%82%B9%E3%82%B1%E3%83%BC%E3%82%B9-Larry-Peterson-ebook/dp/B09ZYDSSYB/ref=sr_1_6?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29HTEXSKZVMF&keywords=sdn&qid=1671796213&s=books&sprefix=sdn%2Cstripbooks%2C194&sr=1-6) * 2022/06/22出版 * 今年出版された数少ないSDN本(監訳)。評判はよいが、入門向けではなさそう * 元のドキュメント(英語)は GitHub で管理されており、今も随時更新されているとのこと * [Software-Defined Networks: A Systems Approach](https://sdn.systemsapproach.org/index.html) * [Web] [SDNは「3強+その他」、IDC Japanが国内SDN市場シェアを発表](https://businessnetwork.jp/article/6263/) * 2018/08/16 の記事で IDC Japan が国内SDN市場に関するベンダーシェアを発表した * VMware * VMware NSX * Cisco * Cisco ACI * NEC * Network Operation Engine * 大規模LAN・DCネットワーク向け: [UNIVERGE Network Operation Engine Overlay Network Extension](https://jpn.nec.com/univerge/noe/noeov.html) * https://jpn.nec.com/sdn/about_sdn.html * Juniper * Contrail * OSSのOpenContrailと同一実装 * 現在はLinux Foundation下でTungsten Fabricとして開発 ### ECL2.0 ECL2.0 では、SDN基盤として Contrail を採用している * [Web] [エンタープライズ向けクラウドのSDN基盤の安定化への挑戦](https://www.janog.gr.jp/meeting/janog44/application/files/5215/6393/4732/janog44-sdnclg-kawakami-01.pdf.pdf) * 2019/07/25 [JANOG44](https://www.janog.gr.jp/meeting/janog44/program/sdnclg/) の登壇資料 * [Web] [クラウドの作り方(使い方じゃないよ)](https://speakerdeck.com/toby06/how-to-create-cloud-service) * 2022/10/27 [クラウドの作り方 (使い方じゃないよ) - NTT Com Open TechLunch #2](https://nttcom.connpass.com/event/263134/) の登壇資料 * TechLunch は NTTコムが昼休みに社内で開催している技術勉強会。特別に社外公開された * SDNとは関係ないが、物理配線の切り替えロボットなんてあるのか、と驚いた ## 認証・認可 認証=Authentication (AuthN)。通信の相手が誰であるかを確認すること 認可=Authorization (AuthZ)。特定の条件に対してリソースアクセスの権限を与えること * [雑誌] [Software Design 2020年11月号](https://gihyo.jp/magazine/SD/archive/2020/202011) * 第1特集:今さら聞けない認証・認可 セキュアなIAMを実現するために覚えておきたいこと * IAM: Identity and Access Management * 全体の概要をつかむのはこれがいちばんいいかも * [書籍] [ゼロトラストネットワーク[実践]入門](https://www.amazon.co.jp/%E3%82%BC%E3%83%AD%E3%83%88%E3%83%A9%E3%82%B9%E3%83%88%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF-%E5%AE%9F%E8%B7%B5-%E5%85%A5%E9%96%80-%E9%87%8E%E6%9D%91%E7%B7%8F%E5%90%88%E7%A0%94%E7%A9%B6%E6%89%80/dp/4297126257/ref=sr_1_1_sspa?crid=6WMYAN4I0R4G&keywords=%E3%82%BC%E3%83%AD%E3%83%88%E3%83%A9%E3%82%B9%E3%83%88%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF+%E5%AE%9F%E8%B7%B5%E5%85%A5%E9%96%80&qid=1672033070&sprefix=%E3%82%BC%E3%83%AD%E3%83%88%E3%83%A9%E3%82%B9%E3%83%88%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%2Caps%2C194&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExV1owNE4wRlNIRk1HJmVuY3J5cHRlZElkPUEwOTY5NzIyMTQ3Q09ZUzRMTVNVNCZlbmNyeXB0ZWRBZElkPUEyMlEySTZWNDNHRTQ0JndpZGdldE5hbWU9c3BfYXRmJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ==) * 2022/02/17 * 最近増えたこのキーワードを構成する技術要素にも認証・認可が。 * まだ読んでいません。。 * [書籍] [認証と認可 Keycloak入門](https://www.amazon.co.jp/%E8%AA%8D%E8%A8%BC%E3%81%A8%E8%AA%8D%E5%8F%AF-Keycloak%E5%85%A5%E9%96%80-%E4%B8%AD%E6%9D%91%E9%9B%84%E4%B8%80-ebook/dp/B09RJXNKD4/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=36AI5ZLWRPVHT&keywords=%E8%AA%8D%E8%A8%BC%E3%83%BB%E8%AA%8D%E5%8F%AF&qid=1671799267&sprefix=%E8%AA%8D%E8%A8%BC+%E8%AA%8D%E5%8F%AF%2Caps%2C190&sr=8-1) * 2022/01/31 * 認証・認可システムをOSSで実現する場合にスタンダードになりそうなプロダクトの実装本 * フェデレーション方式としてOpenID Connect, SAML, OAuthに対応 * リスクベース認証や代理認証方式は未実装らしい * 実装本なのでいつ読めるか。。 * [書籍] [実践 Keycloak ―OpenID Connect、OAuth 2.0を利用したモダンアプリケーションのセキュリティー保護](https://www.amazon.co.jp/%E5%AE%9F%E8%B7%B5-Keycloak-%E2%80%95OpenID-Connect%E3%80%81OAuth-2-0%E3%82%92%E5%88%A9%E7%94%A8%E3%81%97%E3%81%9F%E3%83%A2%E3%83%80%E3%83%B3%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E3%83%BC%E4%BF%9D%E8%AD%B7/dp/4814400098/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=9YXGAWBKCCJF&keywords=keycloak&qid=1671799299&sprefix=keycloak%2Caps%2C175&sr=8-1) * 2022/10/15 オライリー * 認証連携 * 認証基盤を実現する商用プロダクトって * たとえばwindowsの場合はActiveDirectory * 今一番取り扱いの多いRHELは同じようなことができるものとしてidm(identity management)を同梱 * [赤帽エンジニアブログ アイデンティティ管理 1~17](https://rheb.hatenablog.com/archive/category/Identity%20Management) * [Red Hat Enterprise Linuxの認証基盤Identity Management](https://www.slideshare.net/moriwaka/red-hat-enterprise-linuxidentity-management) * [利便性とセキュリティを考慮したネットワーク認証システム](https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=171119&item_no=1&attribute_id=1&file_no=1) * 大変古い情報ですが、やりたいことはこの認証ゲートウェイの文章が近いです ### Technology #### 認証方式 * OAuth * 認証に使用されることも多いが、本質的には認可のためのフレームワーク * OAuth 1.0: 2007年リリース。主にWebサービスを対象とする * OAuth 2.0: スマホアプリも対象とする。HTTPS必須 * OpenID Connect (OIDC) * SSOを実現する仕組みの一つで、OAuth 2.0を認証のために拡張させたもの。JSONフォーマット * [Web] [一番分かりやすい OpenID Connect の説明 - Qiita](https://qiita.com/TakahikoKawasaki/items/498ca08bbfcc341691fe) * [Web] [OpenID Connect 全フロー解説 - Qiita](https://qiita.com/TakahikoKawasaki/items/4ee9b55db9f7ef352b47) * SAML * SSOを実現するフェデレーション方式の仕組みの一つで、認証情報の規格を指す。XMLフォーマット * SP: サービスプロバイダー、IdP から構成される * FIDO * Fast IDentity Onlineの略でファイドと読む * パスワードを使わない認証 * 公開鍵暗号方式を使い、Webサービスの認証をシンプルかつセキュアにする #### 製品 * Keycloak * オープンソースのアイデンティティ・アクセス管理ソフトウェアで、Red Hatにより開発されている。SSO、APIアクセスの認証・認可制御を実現する * SSOはエージェント方式のクライアントアダプターで実装されている。クライアントアダプターがアプリケーションに代わり標準プロトコルで Keycloak サーバと会話し、SSOを実現する。OpenID Connect用, SAML2.0用の2つが提供されている * [Web] [Keycloakとは - Qiita](https://qiita.com/daian183/items/30f01e162e03567ff21b) * 日立製作所、NRI OpenStandiaが情報発信している * [Web] [Keycloak〜SAMLにも対応したシングルサインオン〜 | OSSのデージーネット](https://www.designet.co.jp/ossinfo/keycloak/) > Keycloakは、OpenID ConnectやSAMLなどのシングルサインオンのプロトコルに対応し、IdPとして利用することができます。Keycloakでは、認証バックエンドとしてActiveDirectoryを利用できます。そのため、KeycloakをIdPとして導入することで、Windowsログインで使っているIDとパスワードをそのままインターネット上のサービスでも利用できるようになります。 * [セミナー] 2023/01/27 [オープンソースで実現!システムのログインを一元化するシングルサインオン導入セミナー](https://www.designet.co.jp/seminar/seminar.php?seminar_id=78) * OpenAM * Sun Microsoftsystems が開発した製品を OpenSSO としてオープンソース化したもの。 * 高機能な分設定項目が多く、学習コストが高い * [Web] [OpenAM〜シングルサインオン〜 | OSSのデージーネット](https://www.designet.co.jp/ossinfo/openam/)