タグ

authに関するmanabouのブックマーク (55)

  • Auth.js | Authentication for the Web

    // auth.ts import NextAuth from "next-auth" import GitHub from "next-auth/providers/github" export const { auth, handlers } = NextAuth({ providers: [GitHub] }) // middleware.ts export { auth as middleware } from "@/auth" // app/api/auth/[...nextauth]/route.ts import { handlers } from "@/auth" export const { GET, POST } = handlers // src/auth.ts import { SvelteKitAuth } from "@auth/sveltekit" impor

    Auth.js | Authentication for the Web
  • パスキー対応における2つの段階と必要な機能

    パスキー対応 という記事を見ると フィッシング耐性があるパスワードレスな世界が来る! と期待を抱き、冷静に考えて パスワードが残ってるうちはリスクは残ってるしフィッシングにもやられるし何にもかわらねぇじゃねーか と遠い目をしてしまう皆さん、こんにちは。 ritou です。 いきなり一気に進むわけがないだろ。ということで、認証を必要とするサービスもユーザーも、パスキーにより理想的な状態となるまでには段階というものがあり、 大人の階段と同じで やるべきことがあります。そのあたりを理解することで、一喜一憂せずにやっていきましょう。 2つの段階 既存の認証方式に加えてパスキーによる認証が利用可能 : 過渡期ってやつでしょうか。イマココ パスキーのみが利用可能 : 我々が望んでいる世界や! あとはその前の なんもしてない段階 です。 そんなに新しい話でもないでしょう。 段階を進めるために必要な対応

    パスキー対応における2つの段階と必要な機能
  • Firebase Authから内製認証基盤に無停止移行して年間1000万円以上削減した

    症状検索エンジン「ユビー」 では、ローンチ当初から Firebase Auth (GCP Identity Platform) を使っていましたが、OIDCに準拠した内製の認証認可基盤に移行しました。 認証認可基盤そのものは m_mizutani と nerocrux と toshi0607(退職済) が作ってくれたため、僕は移行のみを担当しました。 結果として、強制ログアウトなし・無停止でビジネス影響を出さずに、年間1000万円以上のコスト削減に成功しました[1]。その移行プロセスについて紹介します。認証認可基盤そのものの紹介はあまりしません。 移行した理由 大量の匿名アカウント ユビーでは、アクセスした全ユーザーに対して自動的に匿名アカウントを発行しています。これにより、ユーザーがアカウント登録しているかどうかに関わらず、同じID体系で透過的に履歴情報等を扱うことができます。アカウント

    Firebase Authから内製認証基盤に無停止移行して年間1000万円以上削減した
  • カード決済のセキュリティ的な問題点とその対策、IC チップの決済とその仕組み - カンムテックブログ

    エンジニアの佐野です。カンムはカード決済のサービスを提供しています。カード決済にはいくつかの決済手段があり、マグストライプ、IC、IC非接触(俗に言うタッチ決済)、オンライン決済などの機能が提供可能です。iD のようなスマートデバイスにカード情報を入れてスマホでタッチ決済する仕組みもあります。カンムのプロダクトであるバンドルカードはマグストライプとオンライン決済、Pool はマグストライプとオンライン決済に加えて IC接触決済、IC非接触決済(タッチ決済)を提供しています。今日はセキュリティ的な観点から各種決済手段の特徴や問題点とともに、主に IC 決済の仕組みについて小ネタを交えつつ書いていこうと思います。カンムが提供しているカードは Visa カードでありクローズドな仕様や confidential なものについては言及することはできませんが、公開仕様であったり一般的な事柄のみを用いて

    カード決済のセキュリティ的な問題点とその対策、IC チップの決済とその仕組み - カンムテックブログ
  • gh auth loginで作成されたクレデンシャルだけで生活するためにgh-doを作った - Copy/Cut/Paste/Hatena

    やっとgh auth loginで得たクレデンシャル(OSのセキュアストレージに保存されているもの)のみを使う生活になったぞ— k1LoW (@k1LoW) 2023年5月15日 GitHub CLIの gh auth login で作成されたクレデンシャルはOSのセキュアストレージに保存されるようになりました。 次のエントリが詳しいです。 blog.kyanny.me 「じゃあ、もう全部セキュアストレージに保存されたクレデンシャルを使えばOK」となるのですが、なかなかそうはいきません。 なぜかというとGitHubのクレデンシャルを使うツールによって環境変数の扱いが異なるからです。 GitHubのクレデンシャル設定の歴史(私の記憶版) 注意: 以下は、あくまで私の記憶であって実際と異なるかもしれません。 前史 GitHub CLI( gh )やGitHub Actionsの登場以前は、クレ

    gh auth loginで作成されたクレデンシャルだけで生活するためにgh-doを作った - Copy/Cut/Paste/Hatena
  • 面倒くさいから nginx の LDAP 認証モジュール公開したよ | IIJ Engineers Blog

    2021年11月にセキュリティ情報統括室に所属。頑固なので、ニックネームだけでもやわらかくひらがなにしてみました。普段はハニーポットで収集したDDoSの発生源であるマルウェアを対象に分析しています。 おはようございます。こんにちは。こんばんは。ふぇにっくちゅん です。 今回紹介するのは nginx で利用できる LDAP 認証モジュール(ngx_auth_mod)です。 nginx は Web サーバやリバースプロキシなどを構築でき、オープンソースとして公開されています。 nginx の詳細はこちらに記載されています。 記事で紹介する ngx_auth_mod は CATSHAND と呼ぶ情報共有システムのモジュールとして開発したものです。 情報共有についての記事「情報を流れに乗せよう:セキュリティ調査の共有方法」も併せて一読ください。 CATSHAND のシステムは Web サーバとし

    面倒くさいから nginx の LDAP 認証モジュール公開したよ | IIJ Engineers Blog
  • WebAuthnをエミュレートするWebアプリの開発 - セキュアスカイプラス

    こんにちは、SSTでWeb脆弱性診断用のツール(スキャンツール)開発をしている坂(Twitter, GitHub)です。 最近 WebAuthn *1 を触る機会がありました。 WebAuthnを使うと、Webアプリのログインで指紋認証や顔認証など多要素認証を組み込むことが可能となります。 一方で脆弱性診断の観点から見ると、burpやzapなどのスキャンツールで WebAuthnを使ったログイン処理をどうやって再現するかが悩ましく感じました。 もちろん、2022年2月時点でほとんどの(筆者の知る限りではすべての)Webサイトで WebAuthn を始めとする多要素認証はオプション扱いです。 多要素認証のフローそのものの診断を要望されない限りは、従来のID/パスワード認証によるログイン処理でスキャンや手動診断が可能です。 とはいえ転ばぬ先の杖と言いますし、診断ツールを開発している筆者として

    WebAuthnをエミュレートするWebアプリの開発 - セキュアスカイプラス
  • Webサービスにおけるログイン機能の仕様とセキュリティ観点 - Flatt Security Blog

    はじめに こんにちは。株式会社Flatt Securityセキュリティエンジニアの村上 @0x003f です。 稿では、Webアプリケーション上で実装される「ログイン機能」の実装パターンをいくつか示し、その「仕様の中で起きうる脆弱性」とその対策について解説していきます。 「ログイン機能」はToB、ToC問わず多くのWebアプリケーションで実装されている機能で、XSSやSQL Injection、Session Fixationといったような典型的な脆弱性の観点については、なんらかの解説を見たことのある方も多いと思います。 しかし、「仕様の脆弱性」というのはあまり多く語られていない印象です。今回はそのようなタイプの脆弱性についての解説を行います。なお、IDaaSを用いずに自前でログイン機能を実装しているケースを複数パターン想定しています。 はじめに ログイン機能の仕様パターンとセキュリティ

    Webサービスにおけるログイン機能の仕様とセキュリティ観点 - Flatt Security Blog
  • IAM ロールの PassRole と AssumeRole をもう二度と忘れないために絵を描いてみた | DevelopersIO

    コンバンハ、千葉(幸)です。 皆さんは、 PassRole と AssumeRole についてきちんと理解ができていますか?どちらも IAM ロールに関するものですね。 私はカラダ(ボディ)の調子がいい時は思い出せるのですが、雨が降っている日や、ちょっと疲れて気を抜いた時にはすぐ分からなくなってしまいます。 ということで、イメージとして脳に刻み付けることによって忘れられなくしてやろうと思いました。 そこで出来上がったのが以下です。 間違えました。以下です。 あ、でもやっぱり忘れづらいのはこちらかもしれませんね。 どうですか?もう忘れられなくなりましたね? 先にまとめ IAM ロールには以下ポリシーを設定できる アイデンティティベースポリシー Permissions boundary 信頼ポリシー AWS リソースに IAM ロールを引き渡す際には PassRole の権限が必要 PassR

    IAM ロールの PassRole と AssumeRole をもう二度と忘れないために絵を描いてみた | DevelopersIO
  • パスワードレス認証導入その後|ころちゃん

    ころちゃんです。記事は Digital Identity技術勉強会 #iddance Advent Calendar 2020 21日目の記事になります。開発ブログも兼ねています。 19日目の氏の記事でも引用してもらっていますが、今年はbosyuにメールアドレスログイン機能を追加したので、今年のうちに、書ける範囲で、振り返りしておきたいなと思い、アドカレに乗っかりました。 生体認証の仕組みの話を書こうと思いましたが、ネトゲの拡張がリリースされてしまい進捗が無になっているので断念。 前提・リリース時点で出した記事はこちら ・導入前: Twitter, Facebook によるSNSログイン ・導入後: 上記 + メールアドレスログイン ・Email OTP(One-Time-Password)の話で、FIDOの話ではない ・要求としては「SNSとは切り離された何かで認証したい」 メアドロ

    パスワードレス認証導入その後|ころちゃん
  • パスワードのないログインを目指して 〜 ヤフーのFIDO標準化活動

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは。Yahoo! JAPAN研究所の大神 渉です。 パスワードの代わりに生体認証などを使うシンプルな認証技術「FIDO」の標準化活動に携わっています。 2020年6月4日に、FIDOアライアンスから私が著者として関わった「White Paper: Multiple Authenticators for Reducing Account-Recovery Needs for FIDO-Enabled Consumer Accounts」というホワイトペーパー(FIDOのベストプラクティスや標準技術の活用に関してFIDOアライアンスが発行する文書のこと)が発行されました。 記事では、私の経験をもとにヤフーがパスワードレス認証

    パスワードのないログインを目指して 〜 ヤフーのFIDO標準化活動
  • OAuth認証とは何か?なぜダメなのか - 2020冬 - r-weblife

    こんばんは。ritouです。 Digital Identity技術勉強会 #iddance Advent Calendar 2020 1日めの記事です。 qiita.com 初日なのでゆるふわな話をしましょう。 何の話か もうだいぶ前ですね。9月のお話です。こんなTweetを見かけました。 社内Slackにいる「OAuth認証」と書くと訂正してくれるbotが丁寧な解説をするようになっていた 認証(Authentication)と認可(Authorization)は間違えやすいわりにミスると甚大な被害をもたらしがちなので、常日頃から意識を高めていきたいですね pic.twitter.com/oVQxBgZcHS— greenspa (@greenspa) 2020年9月28日 このbotに対する思うところはもう良いです。 今回は、「OAuthの仕様に沿ってID連携を実装するいわゆる"OAut

    OAuth認証とは何か?なぜダメなのか - 2020冬 - r-weblife
  • AWS cognito を使って React SPA に認証機能を導入してみた

    今時の認証って🧐 現代はもう認証機能は自分で実装する時代では無さそうです。 この、「どのアプリでも一般的に使われているけど質的な価値になっていない」類の作業を、かの AWS センセーは 「付加価値を生み出さない重労働」 と定義しました。 これらをなるべく削減して、エンジニア質的な顧客価値に直結する作業に注力できるようにするのというのがトレンドです。 せっかくReact で初めてのSPAを作ったので、ついでに前から気になっていた AWS cognito を使って認証機能を付けてみました。 ざっくりとした導入だけですが、基的な使い方だけなら非常に簡単かつセキュアに実装できるのでは無いかと思います!! 以前作った SPA については記事にしています。 こちら 。 Rails API でバックエンドを実装した React SPA についてイメージを掴めるような内容になっていると思いますの

    AWS cognito を使って React SPA に認証機能を導入してみた
  • 認証と認可と課金とコアドメインを分離したシステムは勝てるという話 - まっちゅーのチラ裏

    自分が複数のシステムの開発を経験して得た確信として、「認証と認可と課金とコアドメインの分離がめちゃくちゃ重要である」というものがあるので、コレを整理してアウトプットしていく 分離するモチベーションとは Microservice文脈でいうと、デプロイ独立性だったり、リソースの最適配分だったり、障害の局所化だったり、開発組織とのマッピングだったりがメリットとして語られることが多い。 だが、ここで取り上げたいのは戦術的DDD的観点でのコンテキスト分離の有用性である。 ※ちなみにコンテキスト分離のみであればモジュラモノリスだけで実現可能。 戦術的DDD的観点での関心事の分離によるメリットとは コンテキストが分離されていることによって、境界をまたぐ際に「このI/Fは正しいのか?」を都度考えることを強制することができる。 境界がなければ意図しない密結合を生みやすくなってしまう。 もちろん、境界を超える

    認証と認可と課金とコアドメインを分離したシステムは勝てるという話 - まっちゅーのチラ裏
  • クレジットカードのオーソリゼーションのお話。 - メモ代わりのブログ

    この記事を見かけたので。 naoki440.info TL;DR ・オーソリゼーション(仮売上処理、「オーソリ」)の有効期限は最大60日間と定められている為、60日を超過するとオーソリゼーションが無効になり、売上が非成立となる。 ・予約商品では60日以内に再度オーソリを行うことで、実質的に決済の有効期限を延長している。 ・Lenovoが一回目のオーソリ返金完了前に再度オーソリを行ったのは正常な挙動。 ・クレジットカードの場合、オーソリではなく売上確定処理後に請求を行う為、この問題は発生しない。 ・Kyash側で2重に引き落としされた&チャージ元クレジットカードへ返金ができないのは正常な挙動。 ・クレジットカードのシステムにプリペイドを突っ込むとこの挙動になってしまう。つまり仕様と言える(各種プリカ発行会社もユーザーに告知している)。 一般的なカード決済の流れについて オーソリゼーション(仮

    クレジットカードのオーソリゼーションのお話。 - メモ代わりのブログ
  • ちょっとでもセキュリティに自信がないなら、 Firebase Authentication を検討しよう

    note のやらかしのあのへんについて。 認証自作、 Rails 、 Devise - Diary パーフェクト Rails 著者が解説する devise の現代的なユーザー認証のモデル構成について - joker1007’s diary 認証サーバーの実装は質的に難しいです。セキュリティが絡むものは「簡単な実装」などなく、プロアマ個人法人問わず、個人情報を守るという点で、同じ水準を要求されます。悪意あるハッカーは常にカモを探していて、もし認証が破られた場合、自分だけではなく大多数に迷惑が掛かります。初心者だから免責されるといったこともありません。全員が同じ土俵に立たされています。 とはいえ、認証基盤を作らないといろんなサービスが成立しません。そういうときにどうするか。 Firebase Authentication で、タイトルの件なんですが、 Firebase Authenticat

    ちょっとでもセキュリティに自信がないなら、 Firebase Authentication を検討しよう
  • next.js + vercel + firebase authentication で JWT の検証を行う + Graphql

    今個人で作ってるアプリの 認証 + Graphql の部分を抜き出して GitHub に公開した。 mizchi/next-boilerplate-20200727 next.js + vercel + firebase は (パーツを良く選べば) 最高 next.js はルーティングを持つページを作るには最高で、サーバー、静的サイト、JAM スタック、AMP と必要に応じて選択できる。React ベースならこれ一択。 認証サーバーの実装は毎度疲れるし、Firebase Athunetication はこの点においては OAuth Secret を置くだけ + Custom Provider も作れるので、最高。 それと比べて firestore は、ちょっと前に firestore べったりでアプリを試作したことがあったのだが、型がないためにかなり扱いづらく、また読み書きの速度が遅くパフ

    next.js + vercel + firebase authentication で JWT の検証を行う + Graphql
  • トークンを利用した認証・認可 API を実装するとき Authorization: Bearer ヘッダを使っていいのか調べた - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? TL;DR HTTP でトークンを利用した認証・認可をする手法として RFC 6750 がある OAuth に限らず、トークンを利用して認証・認可する機構の一部として Authorization: Bearer ヘッダを使うことができる 使い方について詳しくはこの記事の下のほうに書いた 要求 トークンを利用した認証・認可機構を持つ API を作りたい クライアントがトークンを HTTP リクエストに含めて送信し、サーバはトークンを検証してリソースへのアクセスを許可したい Authorization: Bearer トークン ヘッダでトー

    トークンを利用した認証・認可 API を実装するとき Authorization: Bearer ヘッダを使っていいのか調べた - Qiita
  • OAuth 2.0/OIDCに入門した開発者が仕様沼に潜るための次のステップとは? - r-weblife

    お疲れ様です、ritou です。 OAuth 2.0やOIDCの入門書(?)を読み終えた開発者の方に、仕様を理解していくための次のステップは何があるかを聞かれました。 そもそもそんなこと言う人は クライアントを実装したい(しなければならない) 認可サーバーを実装したい(しなければならない) セキュリティエンジニアを名乗っていてこの分野を抑えときたい ただ単純に興味がある : そんな人いる? とかそんな感じな気はしますが、基的なフローを乗り越えた先に広がる仕様沼への潜り方に戸惑っておられるようでした。 そこで、いわゆる RFC6749/6750/7636 あたりを完全に理解した開発者が山ほどある仕様にどう立ち向かっていくかを考えます。 仕様にも色々ある IETF の OAuth関連の仕様、いっぱいあります。密です。密です。みみみみみみみみ... tools.ietf.org 去年に一回まと

    OAuth 2.0/OIDCに入門した開発者が仕様沼に潜るための次のステップとは? - r-weblife
  • 牧歌的 Cookie の終焉 | blog.jxck.io

    Intro Cookie は、ブラウザに一度保存すれば、次からその値を自動的に送ってくるという、非常に都合の良い仕様から始まった。 State Less が基だった Web にセッションの概念をもたらし、今ではこれが無ければ実現できないユースケースの方が多い。 冷静に考えればふざけてるとして思えないヘッダ名からもわかるように、当初はこのヘッダがこんなに重宝され、 Web のあり方を変えるかもしれないくらい重要な議論を巻き起こすことになるとは、最初の実装者も思ってなかっただろう。 そんな Cookie が今どう使われ、 3rd Party Cookie (3rdPC) の何が問題になっているのかを踏まえ、これからどうなっていくのかについて考える。 Cookie のユースケース Web にある API の中でも Cookie はいくつかの点で特異な挙動をする 一度保存すれば、次から自動で送る

    牧歌的 Cookie の終焉 | blog.jxck.io