Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kaigi on Rails 2023 - ActiveSupport::CurrentAtt...

Kaigi on Rails 2023 - ActiveSupport::CurrentAttributes: すっごく便利なのに嫌われ者?!

ActiveSupport::CurrentAttributesを嫌う人がいますが、ものすごく便利、というのは言わざるを得ないです。 みんな大好きなグローバル変数を安全にリクエストの中で使える!本当に便利な優れものです。
なんで嫌われているのかについて話して、注意点など、これまでにあったセキュリティ欠陥(Pumaとrailsの組み合わせで、情報が漏洩されていたものがありまして。。。)の話などをして、みんなでActiveSupport::CurrentAttributesを使おう!とまではいかなくても、本当に使わないといけない時があれば一つの選択肢としてありますよ、ということを伝えたいです。

Sampo Kuokkanen

October 30, 2023
Tweet

Transcript

  1. 自己紹介 合同会社イービルマーシ ャンズ代表 イービルマーシャンズの 日本支社の色々やってま す!火星について知りた い方は連絡待ってます🤓 日本の開発のお手伝いさ んも 時々Ruby

    も書きたいの で、日本の会社のRails 開 発のお手伝いも。最近は Hotwire にハマっていま す。 KUOKKANEN SAMPO #THANKYOURUBY 日本で暮らしている フィンランド人です。 Ruby, ゴルフ、車が好 きです。ホンダビート 乗りです。
  2. 使おう!の前にバージョンをご確認 PUMA バージョン5.6.2 以前とRAILS バージョン7.0.2.2 以前で は、レスポンスボディがある一定条件だと閉じられず、これが 情報漏洩を引き起こす可能性があった レスポンスボディが閉じられたら、リセット処理が走るが、閉 じられないのなら、リセット処理も走らず、前のリクエストの

    データが残る可能性が! この問題は、PUMA のバージョン5.6.2 と4.3.11 、および RAILS のバージョン7.02.2 、6.1.4.6 、6.0.4.6 、5.2.6.2 で修 正されています。 修正されたバージョンにアップグレードするか、提供されたミ ドルウェアを使用して問題を回避できます。
  3. Ryan Bigg  ー CurrentAttributes は有害である 1 グローバルステート、 コードがわかりにくく なる 2 コードがテストしにく

    くなる 3 魔法/マジックすぎる 4 明確に意図がわかるコ ードがいい HTTPS://TECHRACHO.BPSINC.JP/HACHI8833/2023_04_26/43810
  4. VS

  5. VS