#author("2023-03-01T00:44:10+00:00","default:admin","admin") #author("2023-03-01T00:45:22+00:00","default:admin","admin") -[[WebAPI学習ソースまとめ:https://qiita.com/y-some/items/7e05540d7563f7c1c101]] -[[Web API認証方式のパターン:https://architecting.hateblo.jp/entry/2020/03/27/033758]] -[[OAuth & OpenID Connect 関連仕様まとめ:https://qiita.com/TakahikoKawasaki/items/185d34814eb9f7ac7ef3]] -[[エンジニアが事業戦略の実現のために認証基盤システムを構築した話:https://tech.leverages.jp/entry/2022/08/08/184428]] -[[ALB + Cognito で作るユーザー認証:https://oji-cloud.net/2021/11/08/post-6634/]] -[[認証を含む API 開発で検討すべきこと:http://www.bokukoko.info/entry/2015/12/20/%E8%AA%8D%E8%A8%BC%E3%82%92%E5%90%AB%E3%82%80_API_%E9%96%8B%E7%99%BA%E3%81%A7%E6%A4%9C%E8%A8%8E%E3%81%99%E3%81%B9%E3%81%8D%E3%81%93%E3%81%A8]] -[[Web API認証について:http://blog.virtual-tech.net/2014/01/web-api.html]] -[[技術/HTTP/REST設計思想の "Stateless" との付き合い方:https://www.glamenv-septzen.net/view/1350]] -[[WebAPIの認証:https://techinfoofmicrosofttech.osscons.jp/index.php?WebAPI%E3%81%AE%E8%AA%8D%E8%A8%BC]] -[[今さら聞けない「認証」のハナシ:https://www.itmedia.co.jp/news/series/11568/]] -認証は、端末やサービスなどを「誰が扱うのか」や「その人物が正当な本人か」を識別する役割を持っている *認証の情報 [#f02729d9] -知識(Something you know):あなたが知っていること --(例:パスワード、暗証番号、秘密の質問、パターンなど) -所有(Something you have):あなたが持っているもの --(例:ICカード、スマホアプリ、携帯電話用SIMカード(SMSメッセージ用)、ハードウェアトークン、USBトークンなど) -生体(Something you are):あなた自身のもの。身体的特徴 --(例:指紋、顔、静脈、虹彩など) *二段階認証 [#qe89b6d1] -[[二段階認証とは?二要素認証との違いやメリット、セキュリティ強化のポイントを解説:https://support.trustlogin.com/hc/ja/articles/900004512726]] -[[もう面倒とは言えない二段階認証の基本、二要素認証との違い:https://japan.norton.com/two-step-authentication-10635]] -[[「7pay」不正ログイン被害で話題「二段階認証」とは?:https://www.itmedia.co.jp/news/articles/1907/04/news116.html]] -[[2段階認証の落とし穴、ヤマト運輸が不正ログインを許したワケ:https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00598/073100024/]] -[[本当に安全? 「二段階認証」のハナシ:https://www.itmedia.co.jp/news/articles/1810/26/news008.html]] -[[中国のハッカー集団、2要素認証をかいくぐり政府機関などを攻撃--研究者が発表:https://japan.cnet.com/article/35147287/]] -二段階認証とは、Webサービスなどにログインする際、ID・パスワードの他に、メールやSMS(ショートメッセージサービス)で送られてくるコードを入力するというように、利用者認証を2回に分けて行う手法 -パスワードが流出した場合に備え、チェック機能をもう一段階設けておくことで、アカウントの乗っ取りを防ぐ目的がある -二段階認証の各段階で使用する認証情報を別々の要素にすることで、「パスワードが分かっても、個人を特定してスマホを入手しなければならない」「スマホを入手したとしても、パスワードを推測しなければならない」といった具合に、不正利用者側の手間が増え、情報入手難易度が劇的に上がり、セキュリティ向上につながる *多要素認証 [#ic64ede0] -[[二要素認証とは?セキュリティを向上させる5つのポイント:https://japan.norton.com/two-factor-authentication-8528]] -[[二要素認証の種類:https://jp.globalsign.com/service/clientcert/tfa.html]] -[[「過去最悪の水準」 ネットバンク不正送金、急増の理由 破られた“多要素認証の壁":https://b.hatena.ne.jp/entry/s/www.itmedia.co.jp/news/articles/1912/27/news018.html]] -認証に使う「要素」には、ID・パスワードなどの「本人しか知らない情報」の他、ICカードやスマホなど「本人が持っている物」、さらには指紋や虹彩など「本人の身体的な特徴」といった種類があり、これらを組み合わせるのが多要素認証 **関連サービス [#ud172e3e] -[[着信認証:https://ostiaries.jp/]] *知識認証 [#vea97811] -[[PINとパスワードは何が違う? 意外と知らない「知識認証」のハナシ:https://www.itmedia.co.jp/news/articles/1902/20/news014.html]] *所有認証 [#vaff889b] **SMS認証 [#d280f9fd] -[[GoogleやLINEみたいなSMS二要素認証をTwilioでサクッと実装してみよう:https://www.webprofessional.jp/secure-laravel-apps-2fa-via-sms/]] -[[ASP.NET Core での SMS による2要素認証:https://docs.microsoft.com/ja-jp/aspnet/core/security/authentication/2fa?view=aspnetcore-1.1]] ***SMS送信サービス [#idf34cb9] -[[SMS送信APIのオススメサービス5つを紹介!比較ポイントを解説:https://liskul.com/sms-api-43448]] -[[人気のSMS APIをまとめてみた:https://qiita.com/cnakano/items/0cd80c5ad523cc762385]] -[[メディアSMS - メディア4u:https://media-sms.net/solution_02.html]] -[[SMS pricing - twilio:https://www.twilio.com/sms/pricing/jp]] ... $ 0.0800/message --[[Programmable API - KDDI:https://cloudapi.kddi-web.com/price/]] *生体認証 [#bce088b0] -[[生体認証技術の日本展開を加速する仏セキュリティ大手:https://eetimes.jp/ee/articles/2005/25/news069.html]] **指紋認証 [#oac0b306] -[[非接触の指紋認証技術、1秒で4本を高速読み取り:https://eetimes.jp/ee/articles/2004/13/news065.html]] **静脈認証 [#v592699b] -[[手のひら静脈認証とは:https://www.fujitsu.com/jp/group/frontech/solutions/business-technology/security/palmsecure/what/]] -[[安全性と利便性を両立する静脈認証技術:https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=71617&item_no=1&attribute_id=1&file_no=1]] -[[富士通研、顔と手のひら静脈のマルチで100万規模の生体認証対応:https://news.mynavi.jp/article/20210121-1664456/]] -[[機器組込み用小型指静脈認証モジュール「H4Eシリーズ」:https://info.hitachi-ics.co.jp/product/e_fvein/h4e.html?utm_source=google&utm_medium=cpc&utm_campaign=finger-vein&gclid=EAIaIQobChMIy8fNltnF7wIVTENgCh0NCQm4EAMYASAAEgI4kfD_BwE]] -[[LG、5G対応で2画面になる「LG V50 ThinQ 5G」と静脈認証対応の「LG G8 ThinQ」:https://k-tai.watch.impress.co.jp/docs/event/mwc2019/1171343.html]] ***[[ノルミー:https://www.normee.co.jp/]] [#l7fa06fa] -[[Mobile Biometrics:https://www.normee.co.jp/product.html]] --[[モバイル生体認証として『世界初』のコモンクライテリア認証取得:https://www.normee.co.jp/news/20180411.html]] -[[スマホで静脈認証が可能に、日本の新興企業が開発:https://eetimes.jp/ee/articles/2006/02/news038.html]] -[[生体認証の未来はどうなる? ノルミーの「手のひら生体認証技術」が実現する、便利で安全な未来の暮らし:https://www.microsoft.com/ja-jp/biz/startups/normee-20200410.aspx]] -[[スマートで安全な「クラウド手のひら認証」の導入による、手ぶらキャッシュレス決済ソリューションでレジの混雑解消を実証:https://special.nikkeibp.co.jp/atclh/ONB/20/microsoft0501/12/]] *3Dセキュア [#x8485191] -[[PayPayも導入した「3Dセキュア」って何? クレジットカード本人認証のハナシ:https://www.itmedia.co.jp/news/articles/1902/07/news006.html]] -基本的にはパスワード認証 -クレジットカードにひも付いたパスワードをあらかじめ設定しておき、クレジットカードを使用する際にパスワードを入力する *Cisco Duo [#n12368df] -[[Cisco Duo紹介:第1回 Duo概要とMFA:https://licensecounter.jp/engineer-voice/blog/articles/20200812_cisco_duo1_duomfa.html]] * 各認証 [#xd489f48] ** BASIC認証 [#jfdef23b] -[[wikipediaによる解説:http://ja.wikipedia.org/wiki/Basic%E8%AA%8D%E8%A8%BC]] ** Digest認証 [#z8c57745] -[[wikipediaによる解説:http://ja.wikipedia.org/wiki/Digest%E8%AA%8D%E8%A8%BC]] ** WSSE認証 [#w06ea784] -HTTPのX-WSSEヘッダを用いて認証用文字列を送信する認証手段 -WSSE認証用文字列にはユーザー名とパスワードが含まれる -パスワードはSHA1アルゴリズムによって暗号化されたダイジェストとして送信されるため、HTTP BASIC認証などに比べてセキュアな認証が可能 ** OAuth [#v9dd48fd] **OAuth [#l35cb109] -[[オープンな認証API「oAuth」:http://www.moongift.jp/2007/09/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%81%AA%E8%AA%8D%E8%A8%BCapi%E3%80%8Coauth%E3%80%8D/]] -[[OAuth - リソースへのアクセスを代行するプロトコル:http://teahut.sakura.ne.jp/b/2007-09-24-1.html]] -[[WebAPI のアクセス制御に使える OAuth という仕様:http://www.machu.jp/diary/20070925.html#p01]] ** [[OpneID:http://openid.net/]] [#n567d478] **[[OpneID:http://openid.net/]] [#ab2cc6d5] **OIDC (OpenID Connect) [#ofaa167a] -[[一番分かりやすい OpenID Connect の説明:https://qiita.com/TakahikoKawasaki/items/498ca08bbfcc341691fe]] *Google Authenticator [#y8705f43] -[[Google Authenticatorとは:https://www.designet.co.jp/faq/term/?id=R29vZ2xlIEF1dGhlbnRpY2F0b3I]] -[[今すぐできる、Webサイトへの2要素認証導入:https://blog.ohgaki.net/use-2-factor-authentication-with-your-web-sites]] -[[2段階認証アプリGoogle Authenticatorのインストール設定&Webでの認証例:https://www.mubit.co.jp/pb-blog/?p=3933]] -[[2段階認証GoogleAuthenticatorのWebアプリ版を作ってみた:https://qiita.com/mindwood/items/3c329d4a24bc8a3ab765]] *参考URL [#r9d799d2] -[[WebAPI,認証APIのセキュリティ:http://gihyo.jp/dev/serial/01/web20sec/0006]] -[[AtomPPやRESTなどのAPIにおける認証のメモ:http://d.hatena.ne.jp/lapis25/20070703/1183445851]] *OAuth 2.0 [#x3fdbeb8] -[[OAuthプロトコルの中身をざっくり解説してみるよ:http://d.hatena.ne.jp/yuroyoro/20100506/1273137673]] -[[ゼロから学ぶOAuth:http://gihyo.jp/dev/feature/01/oauth]] -[[APIアクセス権を委譲するプロトコル、OAuthを知る:http://www.atmarkit.co.jp/fsecurity/special/106oauth/oauth01.html]] -[[OAuth 2.0の代表的な利用パターンを仕様から理解しよう:https://www.buildinsider.net/enterprise/openid/oauth20]] -[[OAuth 2.0 全フローの図解と動画:https://qiita.com/TakahikoKawasaki/items/200951e5b5929f840a1f]] -[[OAuth 2.0 クライアント認証:https://qiita.com/TakahikoKawasaki/items/63ed4a9d8d6e5109e401]] -[[OAuth 2.0 の仕組みと認証方法:https://murashun.jp/blog/20150920-01.html]] -[[OAuth 2.0 の認可レスポンスとリダイレクトに関する説明:https://qiita.com/TakahikoKawasaki/items/8567c80528da43c7e844]] -[[OAuth2.0によるWeb APIの保護:https://www.slideshare.net/naohiro.fujie/oauth20web-api]] -[[一番分かりやすい OAuth の説明:https://qiita.com/TakahikoKawasaki/items/e37caf50776e00e733be]] -[[OAuth 2.0 の勉強のために認可サーバーを自作する:https://qiita.com/TakahikoKawasaki/items/e508a14ed960347cff11]] **[[RFC6749:https://datatracker.ietf.org/doc/html/rfc6749]] [#ua9abed6] -[[RFC 6749 - The OAuth 2.0 Authorization Framework 日本語訳:https://tex2e.github.io/rfc-translater/html/rfc6749.html]] **stateパラメタ [#fa8201e8] -[[OAuthやOpenID Connectで使われるstateパラメーターについて:https://tech-lab.sios.jp/archives/8492]] -[[OAuth2.0 State の役割:https://qiita.com/naoya_matsuda/items/67a5a0fb4f50ac1e30c1]] -[[図解:OAuth 2.0に潜む「5つの脆弱性」と解決法:https://www.atmarkit.co.jp/ait/articles/1710/24/news011.html]] -[[OAuth 2.0, OpenID Connect の state, PKCE, nonce について調べた:https://medium.com/@itooww/oauth-2-0-openid-connect-%E3%81%AE-state-pkce-%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F-1463942309c7]] -[[OAuthのセキュリティ強化を目的とする拡張仕様を導入しました:https://alpha.mixi.co.jp/entry/2013/12020/]] -CSRF対策 -stateパラメタの限界 --認証サーバは認可要求からクライアントがstateパラメータを利用しているかどうか”は知ることができるものの, “stateパラメータに共通の値や推測可能な値を指定していないか”、クライアントが正しく認可応答のstateパラメータの検証をしているか”までは知ることができない **PKCE [#a9c5df75] -Proof Key for Code Exchange by OAuth Public Clients -[[Auth0を利用してOAuth 2.0のPKCEを理解する:https://dev.classmethod.jp/articles/oauth-2-0-pkce-by-auth0/]] -[[OAuth2.0拡張仕様のPKCE実装紹介 〜 Yahoo! ID連携に導入しました:https://techblog.yahoo.co.jp/entry/20191219790463/]] -[[PKCE: 認可コード横取り攻撃対策のために OAuth サーバーとクライアントが実装すべきこと:https://qiita.com/TakahikoKawasaki/items/00f333c72ed96c4da659]] -[[OAuth 2.0 認可コードフロー+PKCE をシーケンス図で理解する:https://zenn.dev/zaki_yama/articles/oauth2-authorization-code-grant-and-pkce]] **リソースオーナーパスワードクレデンシャルグラント [#f2c3ea81] -[[リソースオーナーパスワードクレデンシャルグラント:https://openid-foundation-japan.github.io/rfc6749.ja.html#grant-password]] *OpenID Connect [#h1f7fd5a] -[[一番分かりやすい OpenID Connect の説明:https://qiita.com/TakahikoKawasaki/items/498ca08bbfcc341691fe]] -[[Open ID Connectとは?概要とメリットを解説!:https://www.macnica.co.jp/business/security/manufacturers/okta/blog_20210901.html]] -[[OpenID Connectユースケース、OAuth 2.0の違い・共通点まとめ:https://www.buildinsider.net/enterprise/openid/connect]] -[[金融APIセキュリティのためのOAuth/OIDC入門:https://tech.bitbank.cc/20201211/]] -[[OAuth / OpenID Connectを中心とするAPIセキュリティについて:https://www.slideshare.net/tkudo/oauth-oidc-api-security-yuzawaws]] -OAuth2を拡張したもの -機能的で安全な認証システムを実現する方法について明確なガイダンスを提供 *SAML(Security Assertion Markup Language) [#d0406428] -[[SAMLとOAuthの違い:https://i.moneyforward.com/resources/saml_sso]] -[[SAMLとは?SSO(シングルサインオン)認証の仕組み・メリット:https://boxil.jp/mag/a2950/]] -[[SAML認証を勉強せずに理解したい私から勉強せずに理解したい私へ:https://qiita.com/khsk/items/10a136bded197272094a]] -[[SAML認証の処理のフローを知りたい:https://manual.iij.jp/iid/faq/19644038.html]] -[[強力なSSOを実現するXML認証・認可サービス(SAML):http://www.atmarkit.co.jp/fsecurity/rensai/webserv04/webserv01.html]] *WebAuthn [#l705ed0d] -[[パスワード不要の認証「WebAuthn」とは?|「FIDO」の構成技術を解説:https://www.nri-secure.co.jp/blog/what-is-webauthn]] -[[WebAuthnのやさしい解説!安全にパスワードレス認証ができる仕組みとは?:https://techblog.raccoon.ne.jp/archives/1594945638.html]] -[[WebAuthnの仕組み:https://www.okta.com/sites/default/files/2020-08/How_WebAuthn_Works_JP.pdf]] *ログイン認証 [#i762cf29] **事例 [#xd2ca1bd] -[[ログイン認証・マイページ:https://www.pi-pe.co.jp/spiral-series/spiral-suite/function/authentication/]] *IDフェデレーション [#t992046a] -[[【入門】ID フェデレーションとは?わかりやすく解説:https://hogetech.info/security/sso/federation]] **[[Sign in with Apple:https://support.apple.com/ja-jp/HT210318]] [#xadaa322] -[[Sign in with Appleと連携の設定:https://mbaas.nifcloud.com/doc/current/tutorial/signin_with_apple_id_setup.html#/Swift]] -[[Eight、Sign in with Apple対応したよ!:https://buildersbox.corp-sansan.com/entry/2020/04/14/110000]] **Sign in with Google [#q9bfe378] -[[1回タップするだけでアプリやサイトにサインインできる新機能「One Tap」をGoogleが発表:https://gigazine.net/news/20210804-google-identity-services-apis/]] *AWS [#t51e2d2a] -[[【徹底解説】AWSにおける認証サービスとは?:https://www.sunnycloud.jp/column/20210803-01/]] -[[LaravelからAppSync APIをIAM認証で実行する:https://tec.tecotec.co.jp/entry/2021/12/08/000000]]