CookieのDomain属性について調べたのでその備忘録(rfcの該当箇所を抜き出しているだけです。) 調べた背景はCookieを送信する先のDomainとPathについてです。 Domain属性 www.example.com , admin.example.com の用にdomainは同じでも複数のサブドメインでに向けてCookieを送信したい場合のDomainの書き方についてブラウザで見ると .example.com の等に書かれているが、この記法をそのまま使っていいのかわからなかったので調べました。 Domain属性についての邦訳 https://triple-underscore.github.io/RFC6265-ja.html#section-4.1.2.3 rfcではこちら https://tools.ietf.org/html/rfc6265#section-4.1.2
SPAのログイン認証のベストプラクティスがわからなかったのでわりと網羅的に研究してみた〜JWT or Session どっち?〜JavaScriptRailsJWT認証React SPAのログイン周りについて、「これがベストプラクティスだ!」という情報があまり見当たらないので、様々な可能性を模索してみました。 いろいろな状況が想定され、今回記載する内容に考慮の漏れや不備などがありましたら是非コメントでご指摘いただきたいです!特に「おすすめ度:○」と記載しているものに対しての批判をどしどしお待ちしております! この記事でおすすめしているものであっても、ご自身の責任で十分な検討・検証の上で選択されてください。 前提 想定しているAPIは、 ログイン外のAPIにはPOST/PUT/DELETEのものがなく、GETのみ GETのAPIにはDBを更新するなどの操作がない とし、そのためログイン外では
HTTPサーバーおよびリバースプロキシのNginxの開発チームは4月21日、最新の安定版となる「nginx-1.18.0」公開を発表した。 NginxはオープンソースのHTTPサーバーおよびリバースプロキシソフトウェア。軽量かつ高速な動作が特徴で、ロードバランサー、HTTPキャッシュなどの機能も備える。 nginx-1.18は2019年5月に公開されたバージョン1.17に続く最新安定版となる。新しいディレクティブとして「auth_delay」が加わった。1.17.10で導入した機能で、不正なアクセスからサーバーを防ぐため、許可されていないリクエストに対し401応答コードを遅延させて返答するもの。また、grpc_passディレクティブでパラメータを指定する際に変数を利用できるようになった。 limit reqとlimit connにおいて「dry run」モードをサポートした。dry run
英Canonicalは4月23日、Linuxディストリビューション「Ubuntu 20.04 “Focal Fossa”」の正式版公開を発表した。長期サポート(LTS)版となり、2025年4月まで5年間サポートする。 2019年10月に公開した「Ubuntu 19.10」(「Eoan Ermine」)に続く最新版。LTSとしては2018年4月公開の「Ubuntu 18.04」(「Bionic Beaver」)以来のリリースとなる。 Linuxカーネルはバージョン5.4をベースとし、セキュリティと性能に大きくフォーカスした。セキュリティでは、カーネルロックダウンモードとKernel Self Protectionが加わった。stack-clashに対する保護につながるとしている。また、Secure Bootを追加、ローレベルの攻撃とルートキットを保護するという。ソーシャルエンジニアリング攻撃
Intro メールクライアントや RSS リーダーのようなユースケースを PWA で実装する場合、バックグラウンドで定期的にタスクを実行したいケースがある。 このユースケースに特化した API として提案されているのが、 Periodic Background Sync(PBS) だ。 しかし、この API を取り巻く議論は「Web にアプリのような API を持ち込む上での難しさ」を物語っている。 この API が Web において正当化できるかどうかは、 Project Fugu に代表される Application Capabilities を Web に持ち込む場合の試金石になりそうだ。 現時点での、仕様、実装、議論について解説する。 Periodic Background Sync Web で定期的なタスクを実行する場合、タブが開いていれば setInterval() などで行う
github.com 空白をスキップして縦移動するマッピングを提供するシンプルなプラグインを作りました。 言葉で説明すると分かりにくいと思うのでそれぞれスクリーンショットを貼ります。 non-blank mappings 関数定義・if・while などブロック・ステートメントの対応する始まり・終わりに飛びたい時などに使ってます。 " マッピング例 nmap sj <Plug>(columnskip:nonblank:next) omap sj <Plug>(columnskip:nonblank:next) xmap sj <Plug>(columnskip:nonblank:next) nmap sk <Plug>(columnskip:nonblank:prev) omap sk <Plug>(columnskip:nonblank:prev) xmap sk <Plug>(colu
社内システムをAWS ECS上で運用しているのだけど、ECSってやつでデプロイできるらしい…くらいの知識からスタートしていたので、運用するイメージの指定にlatestタグのまま運用していた。 次のバージョンでは起動する前にデータベースのマイグレーションをしてほしい、という案内がきて、ということは、何かの拍子に最新に上がってしまうとアプリケーションが正しく起動できなくなることを意味している。どのタイミングでイメージが更新されるかあまり考えていなかったけど、オートスケールしてタスクが増減したり、EC2ごと壊れたらECSが立て直してくれるので、そういう任意のタイミングでlatestタグがpullされることになる。 latestタグのまま運用するのはよくあるアンチパターンなようで、ちょうどこの人と同じミスをしていた。 latestタグのままdocker imageを本番運用してどうなったか - 京
今この時期、もちろん弊社もCOVID-19関連の事情を鑑みてテレワーク……とはあんまり自分の回りでは言わない、リモートワーク(もっと言うとWFH: Work From Home)してる。自分が完全WFHに切り替えたのは1月半ばくらいだったかなー。もう3ヶ月ですね。 で、どうかというと、業務のパフォーマンスで見ると、自分のいまのパフォーマンスは明らかに悪い。少なくとも良くはない。それは自分でもわかってる。 でももう、これはしょうがない、と思うので、覚悟している。高パフォーマンス出せたらいいとは思うけど、同時にどう考えても無理して仕事で高パフォーマンス出すような時期でもないと思う。 だからこのエントリは、まあしょうがないよね、というのを受け入れよう、という話です。*1 なおこのエントリは業種柄、リモートワークに移行しやすい自分の話しかしていません。生活必需品や医療品関連の小売店舗や病院、窓口が
完全 WFHを初めて早二ヶ月が過ぎた. 結論からいると成果はそれほど上がっていないのだが, その中で私が試したことについて示す. 今月半ばぐらいからぼちぼち改善しているような気はするので引き続き改善を行っていきたい 早寝早起き生活に変えた オフィスに通っていた頃はひどいときだと朝 3 - 4時ぐらいに寝て, 10時頃に起きて, 1時間ぐらいで仕度してオフィスに行くということをしていたが, 家で仕事をするとなるとだらけてしまい 10時に起きたら仕事のやる気が出てくるのが 13時-14時になってしまってい, 焦りを生んでいたのでそれを改めるために早寝早起き生活にシフトした. 当然突然切り替えられるわけはなかったが, 1ヶ月ぐらいで徐々に早寝早起きできるようになり, 今では 1時までには寝て, 7時程度には起きられるようになった. これで朝だらけたいなぁと思っても 1-2時間の余裕があるので 1
先日、Arduinoを使ってアルコール消毒液ポンプを自動噴霧する記事を載せました。 これは自宅で作ったのですが、会社のオフィスに持っていくと明るすぎてセンサーがなかなか動作しなかったりします。使用環境に応じてセンサー動作の閾値を変える必要があったのと、この設定を表示できること、さらには、消耗度合いなどを管理できるように使用回数を表示できることが必要と考えました。 今回は使用回数表示やセンサーの感度調整を追加して、オフィスで使えるようにケースに実装を行いました。 アルコール除菌ポンプに触れずに作動できるArduinoモジュール 実際の動作ムービーはこちら。 Arduinoを使ったアルコール除菌ポンプ自動噴霧器の製作 部品も安くて入手性の良いものを用いてますので、みなさんのご家庭やオフィスのアルコール消毒液ポンプの機能拡張にも役立てていただければと思います。 目次 目次 回路図 CdSセンサー
先々週金曜 友達がGoogle Meetの場を作ってくれたのでつないで会話した。うちだけ餃子があったりいくらがあったり気前が良い状態だった。みんな元気そうで良かった。Google Meet Grid Viewの拡張が便利。 chrome.google.com 先週土曜 14時から友達たちとリモート飲み会して、途中で離脱して18時から義理のお母さんとリモート飲み会した。義理のお母さんと連絡できたのがよくて、Fire TVでYouTube見れるという情報を伝授したら、喜ばれていた。普段言えにいるときと同じフォーメーションになるよう並んだら家に居るのと同じ雰囲気になった。 昨日 会社の上司である大西さんと、以前弊社に居た人たちとリモート飲み会した。ふだん、仕事が終わったら、大西さんと会社で大西さんの顔を見ながらビールを飲みつつ、家に帰って妻の顔も見たいので両ばさみなのが、同時に大西さんと妻の顔を
github.com/natureglobal/realip これはngx_http_realip_moduleと同様の挙動を、Goのhttpハンドラをラップするミドルウェアレイヤで実現するものです。 アプリケーションが信頼できるNginx等のproxy配下にあれば、X-Real-IP ヘッダなどをそのままクライアントIPとして採用すればよいのですが、クラウドのロードバランサー、例えばALBなどに直接Goのアプリケーションをぶら下げている場合、ALBはX-Real-IPを付けてくれないので、アプリケーション側でクライアントのIP検出をおこなう必要があります。そういったときにこのモジュールが有用です。 X-Forwarded-Forを見れば良いという話ではあるのですが、HTTPヘッダは簡単に偽装できますし、CDNを使っているなど多段になっているケースでも判別は地味に厄介です。ヘッダを付けてき
この記事はミーティングログの取り方についてのメモです。 以前書いた勉強会でのメモの取り方と似た話です。 勉強会でのメモの取り方について | Web Scratch 自分は書きながら話を聞くのが習慣化しているので、こんな感じでミーティングログ(ミーティングノート)を書いていますという話です。 この記事はメモ書きなのであんまり読みやすくないです。 このログの取り方は正確さログや整形されたログを取る方法ではありません。 2種類のミーティングログ 自分の場合は主に2種類のミーティングログを取ることが多いです。 ミーティングの内容によってどちらで取るのかを使い分けています。 リアルタイムモード 対面、リモートでのミーティング 回想モード ブレスト系のミーティング(JavaScript Primerの出版に関するミーティングなど) この記事ではこの2つのミーティングログの取り方について書いていきます。
こんな感じで割とずぼらな自分でも、GitHub で管理すると見える化できてモチベーションにもなるのか、割とちゃんと運用できています。 他リポジトリの issue も参照できるし、GitHub Project ええやん pic.twitter.com/cFmENuFaGa— tyru (@_tyru_) 2020年4月22日 Google Keep ちなみに Google Keep も併用しだして、リマインダーとして使ってます。運用方針はこれ。 Google Keep と併用して混乱したけど、Google Keep はリマインダ。GitHub Project は TODO リスト。 TODO リストでやってることを明日のこの時間にやりたい、とかリマインダに「も」登録してもいい。 合言葉は「積むなら TODO リスト行き」— tyru (@_tyru_) 2020年4月22日 そもそも TOD
以前にCircleCIでUnityをテスト/ビルドする、或いは.unitypackageを作るまで、それとCIや実機でUnityのユニットテストを実行してSlackに通知するなどするという記事を書いたのですが、時代はGitHub Actionsということで、私も全体的にCircleCIからGitHub Actionsに移行を始めてまして、それに伴ってビルドスクリプトも最新化したので、紹介します。コンフィグ作成にあたっては【Unity】GitHub Actions v2でUnity Test Runnerを走らせて、結果をSlackに報告する【入門】とUnityをGitHub Actionsで動かす際にライセンス認証周りで注意するべき点も参考にしました。 実際のコンフィグは ZLogger/.github/workflows にありますが、Unityの部分だけ取り出して実行可能な形式にすると
_ Rubyの状態変数の値 状態変数を利用したプログラムを実装するときに、あまり何も考えずに、Numeric定数を使ってしまって失敗した。 STATE_A = 1 STATE_B = 2 STATE_UNKNOWN = 99 ... case @current_state when STATE_A ... あとからステートパターンを実装することを考えたら、そこはSymbolを使うべきところだった。 STATE_A = :state_a # 不要だが、ステート一覧を示すための宣言と考える STATE_B = :state_b ... if self.respond_to?(@current_state) @current_state = self.__send__(@current_state) else raise "unknown state #{@current_state}" end
Netlifyは便利ですが、Freeプランだと月300分の制限があります。 300 build minutes/month https://www.netlify.com/pricing/ 色々なOSSでNetlifyを使っているとこの制限にすぐに到達してしまいます。 具体的には、次の点でNetlifyのBuilt Timeはすぐ消費されてしまいます。 RenovatebotなどPRをたくさん出すやつとNetlifyのPreview Buildの相性が悪い NetlifyのBuild TimeはプロジェクトをTransferしても、一度消費した分は戻らない https://app.netlify.com/teams/{team}/builds/insights でBuild Timeを見られる Netlify Open Source Plan NetlifyにはOpen Source Pl
マッサージチェア買ったぜって日記を書いていたけど、この日記の読者の大半はマッサージチェアに関心がないと思われる。 Google DiscoverはGoogleがAndroidのホーム画面におすすめ記事を流してくれるやつで、毎朝起きたらとりあえず見ている。 ふだんはパルプ・フィクションと仁義なき戦いの情報が流れてくる場所なのだけど、最近購入前にあれこれ調べていたためか、マッサージチェアに関心があるという設定になっていて、ブログに記事を書いたら自分のスマホに流れてきた。おそらく載ったタイミングから急にPVが増えだしていておもしろい。 興味ベースで、マッサージチェアに関心がある人たちのもとに届いているのは良い仕組み。増えたのはPVくらいで、ソーシャルシェアされたりはしなかった。有益な記事ではなくて日記なのでまあそんなもんだろうとは思う。有益な記事を書けばここからシェアされたりしそう。
Mac mini を買った。 やっちまいました(ずっと狙ってはいた......) pic.twitter.com/7KPM0f7Yh6— a-know | Daisuke Inoue (@a_know) 2020年4月17日 先日のマイナーチェンジ(お値段据え置きでSSD容量倍増)以降、Apple の整備済製品でずっと狙っていたんだけど、先週末にようやく購入。 スペックは以下のようなかんじ。 Mac mini 2018年10月発売モデル 3.0GHz 6コアIntel Core i5 16GB 2,666MHz DDR4 SO-DIMMメモリ 256GB PCIeベースSSD 主に開発用の用途。メモリについては追々、自分で増設しようと思っている。 Mac mini ってことはディスプレイやキーボードは?ってなるんだけど、いずれも無い。macOS の画面共有機能を使って使用している。 sup
僕は肩こりが酷く、肩が凝ってくるとジムのプールに行ったり、妻は肩こりが酷く、良いマッサージ屋があると大阪まで通ったりしていたのだけど、こういう情勢では家から出て肩こりを解消することもままならない。 これまでの生涯を通して、こんなに家に居ることが推奨されている暮らしは初めてだし、マッサージ屋に通う代金を先払いすると考えれば、家での快適さを極限まで高めるためにマッサージチェアがあるのはよさそう、と買ってしまった。パナソニックのリアルプロ、EP-MA100というモデル。 ネットで情報収集したところ、足の畳めてコンパクトになるエントリーモデルでよいのでは、と思いつつも、緊急事態宣言が出る前のヨドバシに行ってひとしきり座ってきた。現在は一部だけ営業していてマッサージチェアコーナーは閉まっている。妻は一番良いモデルが良いと主張をするので、そりゃあそれだけ高ければ良いものは良いでしょう…同僚の下林さんは
計測結果をインセンティブに結びつけるとハックされてしまうという本。 科学実験とかなら計測するのは有益だけど、対象が人間の営みとかだと、指標とする数字を上げるための操作が可能になってしまう。学校において、テストの平均点を上げるために、点数の悪い生徒を障害児として別のグループに入れる、とか、医療現場において、手術成功率を上げるために、リスクのある手術をしない、とか、厳しい事例が紹介されている。 短期的な目標が報酬に紐付いていると売上を追い求めて値上げし続けて信頼を失ったりする、指揮官は固定給に切り替えている事例もある、という話も載っていた。 我が社では半年ごとに目標を決めて、今期はこれをやりましょうってやっているけど、上の方の人の目線も一律で半年後で売上を追い求めている、というよりは、もうちょっと先を見据えて、一喜一憂したり数字をハックしたりせずに暮らせるようになっている方がよさそう。 たとえ
Cacooで「データベーススキーマを自動生成できる」という素晴らしい機能が先週発表されました。 cacoo.com Cacooが提供するSQLクエリをデータベースで実行して、その結果をCSVファイルとしてエクスポートしてCacooにアップロードするだけでER図が生成されるというものです。 現時点で公式サポートされているのはMySQLとPostgreSQLですが、 一応1列目にRDBMSの名前が入るようになってるんですが、CSVのフォーマットとしては統一されてます。— Kohei Kimura (@cohhei) 2020年4月16日 ということなので、tbls out のサポートフォーマットにCacooのデータベーススキーマ機能用のCSV( cacoo )を追加しました。tbls v1.33.0で試すことができます。 MySQLのデータベーススキーマ まずはMySQLのデータベースで試して
都道府県別に傾向を一覧で見たいとおもって、JSならほかの人にも見やすいだろうなと作ってみた。 新型コロナウィルス都道府県別感染者数の傾向 都道府県ごとの数値を見るだけであればNHKがまとめていたのだけど、時系列グラフがほしかった。 特設サイト 新型コロナウイルス 都道府県別の感染者数・感染者マップ|NHK いまはNHKも都道府県を選択すれば個別のグラフが見えるようになっている。 一覧で見れることの他には、感染拡大度合いで地図の色付けをしているのと、感染拡大率のグラフを見れるようにした。 地図の色付けは、NHKや東洋経済など他のサイトでは感染者数で色付けをしているのだけど、一旦最高値の色になると変化がなく、また人口が少ない県では感染がひろまっても色付け基準にならないなど、ほとんど情報量がなくなってしまっている。 ここでは、感染拡大率によって色を変えているので、感染が拡大しているところは色がか
ここ1週間くらいで、C# 9.0 で入るであろう機能がちゃんとした仕様ドキュメントに起こされ始めました。 Add draft spec for C# pattern-matching changes. #3361 Add proposal for target-typed conditional expression. #3363 C# Language Design for April 13, 2020 (Roadmap for records) Init only proposal document #3367 パターン マッチング v3 パターン マッチングも3世代目になります。 最初 C# 7.0 に入ったころは単に「is がちょっと便利になった」、 「switch で型分岐ができるようになった」程度の機能でしたが、 3世代目ともなるとずいぶんいろいろなものが増えています。 詳細は
JSer.info #484 - Headless Chromeを扱うライブラリであるpuppeteer 3.0.0がリリースされました。 Release v3.0.0 · puppeteer/puppeteer Chromium 81.0.4044.0へアップデートされています。 また、v2.1.0でFirefoxをサポートしていますが、インストール時にPUPPETEER_PRODUCT=firefox npm installとすることでFirefox Nightlyのバイナリをダウンロードできるようになっています。 その他にはNode.js 8のサポート終了やコードベースをTypeScriptへマイグレーションしていくなどの変更が含まれています。 Chrome 83 Betaがリリースされました。 Chromium Blog: Chrome 83 Beta: Cross-site Sc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く