タグ

ブックマーク / kiririmode.hatenablog.jp (14)

  • Cookieによる情報取得同意の要否と改正個人情報保護法 - 理系学生日記

    Cookieによる情報取得に関して同意を求めるポップアップが、多くのページで実装されるようになりました。 (GDPRではなく)改正個人情報保護法の観点で、Cookieの扱いに関して調べたことをまとめます。正しいのかは確信がないけれど。 私の中の結論としては「個人情報保護法においては」Cookieによる個人関連情報の取得に関してユーザー同意は必要ないだろう、ということです。一方で、結局GDPRにも対応するんだったら、そっちを調べた方が良いでしょう。GDPRについてはCookieに関するユーザー同意は必要なので。 Cookieの扱い 個人関連情報 個人関連情報を取得する際に同意が必要なのか Cookieにより取得した情報の第三者提供 結論 ちなみに Google Analyticsの利用規約 Google Analyticsはファーストパーティクッキーを使う 参考文献 Cookieの扱い まず

    Cookieによる情報取得同意の要否と改正個人情報保護法 - 理系学生日記
    fumikony
    fumikony 2023/10/16
  • マルチテナントデータを安全に扱うための Row Level Security、そして1ユーザーが複数のテナントに所属するときの対応について - 理系学生日記

    このエントリでは、マルチテナントアプリケーションを構築する場合に、テナントに紐づくデータをどう安全に扱うかという点でRLSについて記載します。 特に、1ユーザが複数テナントに関する権限を持つ場合にRLSをどう適用すべきか、頭を悩ませました。 マルチテナントアーキテクチャ Row Level Securityとは 設定例から読み解くRLSの挙動 CREATE POLICYから読み解くRLS マルチテナント安全性のための単純な設定例 テナントごとにユーザーを切り替える テナントの情報をDBセッションあるいはDBトランザクションに持たせる ログインユーザが複数テナントの権限を持てる場合の対応 テナントIDのリストを文字列化 USINGの中でテナントIDを取得 マルチテナントアーキテクチャ SaaS Storage Strategiesによれば、マルチテナントアプリケーションを実現するためのアーキ

    マルチテナントデータを安全に扱うための Row Level Security、そして1ユーザーが複数のテナントに所属するときの対応について - 理系学生日記
  • 送信ドメイン認証としてのSPFとDKIM - 理系学生日記

    最近はなりすましメール周りについて調べていまして、いままでまったくタッチしてこなかったメール周辺知識を必死で吸収するようにしています。 メールにおける送信者情報 エンベロープFrom ヘッダFrom 送信ドメイン認証 SPF (Sender Policy Framework) 参考文献 DKIM (Domainkeys Identified Mail) 今後 メールにおける送信者情報 メールにおいては、2つの送信者情報が存在します。 エンベロープFrom ヘッダFrom エンベロープFrom ご存知の通り、メールの配送プロトコルはSMTPです。 SMTPは配送を行うプロトコルであるがゆえに、当然送信者や宛先のメールアドレスが必要になります。 これらは、MAILやRCPTといったSMTPのコマンドにより、メールサーバ(MTA)間でやりとりされます。 このうち、MAIL FROMでやりとりされ

    送信ドメイン認証としてのSPFとDKIM - 理系学生日記
  • なぜ今シェルスクリプトを学ぶのか・シェルスクリプトのTips - 理系学生日記

    会社の中でシェルスクリプトについての話をすることにしたので、このエントリはそのためのものです。 個人的な好みとかもいろいろ入ってしまっているので、そのあたりは取捨選択してください。 なぜ今シェルスクリプトを学ぶのか 公開されているSREをマルっとPDF化する SpotBugsのViolationレポートをMerge Requestのコメント投稿する ぼくの互換性についての考え方 何で書くか シェルスクリプトをうまく書くには ShellCheckを使う バッドパターンとその修正 line-by-lineの処理が多い lsを使う ls /directory | grep mystring ls | grep -v 'log$' lsの結果をループさせる 良いシェルスクリプトを書くためのTIPS set -euする 文字列は基的にクオートする 局所変数にはlocalを使う 定数は読み取り専用

    なぜ今シェルスクリプトを学ぶのか・シェルスクリプトのTips - 理系学生日記
  • Puppetterを使ったアプリをコンテナ化してLambdaにデプロイする - 理系学生日記

    ChromeChromiumをNode.jsから操作できるライブラリとしてPuppetterがあります。 これを使うと、Chromeでできるさまざまな事柄が自動化できます。 一方で、PuppetterはChromeを内蔵しており、Lambda関数化したとしてもそのサイズは非常に大きくなります。 Lambdaのパッケージサイズ制限は以下の通り(Lambda quotas)であり、通常Lambda関数化できません。 50 MB (zipped, for direct upload) 250 MB (unzipped) 3 MB (console editor) この問題を解決するために、AWS Lambda用の別ライブラリも存在しています。 ただ、Lambda関数をコンテナ化すると、そのサイズ制限は10GBとなり、自由度が大きくなります。 Container image code packa

    Puppetterを使ったアプリをコンテナ化してLambdaにデプロイする - 理系学生日記
  • コミット履歴を綺麗にするときの`git commit --fixup`と`git rebase --autosquash` - 理系学生日記

    Pull Request(PR)やMerge Request(MR)を作る中で、コミット履歴はできるだけ綺麗にしておきたいものです。 プルリクエストについて - GitHub Docs Merge requests | GitLab ぼくはあまりコミット履歴の綺麗さを気にしない方でした。 しかし大きめのPRやMRをレビューする側に回ると、「変更のまとまり」が追えないと「なぜこの変更をしたのか」が非常に追いにくくなります。 だからこそ最近は、コミット履歴をかなり意識するようになりました。 その時に活躍しているのが、タイトルの通りgit commit --fixupとgit rebase --autosquashです。 git commit --fixup git rebase --autosquash そのほかおすすめ git commit --fixup git commit --fixu

    コミット履歴を綺麗にするときの`git commit --fixup`と`git rebase --autosquash` - 理系学生日記
  • AWS におけるマルチアカウント構成の動向 - 理系学生日記

    AWS で環境を構築する際はマルチアカウントになることが多い、これは理解していたつもりでした。 stg 環境と prod 環境は AWS アカウントごと分ける。dev 環境も分ける。 しかし、世の中のベストプラクティスはもっと先を行っていました。 なぜアカウントを分けるのか isolation authz & authn auditing and reporting 世の中のマルチアカウント構成 各企業の事例 AWS が提供するベストプラクティス Gruntwork から見た AWS ベストプラクティス 各社のプラクティスから読み取れること なぜアカウントを分けるのか AWS アカウントを分ける理由は 3 つあります。 isolation authz & anthn auditing and reporting isolation そもそもとして、環境は分離しないと、というものです。 st

    AWS におけるマルチアカウント構成の動向 - 理系学生日記
  • なぜぼくがConsulに心奪われるのか - 理系学生日記

    ちょっと来週の中央線 Meetup で発表する Consul の資料をつくっているんだけど、つくっていたらすごい興奮してきて異常に興奮してきて、 いややっぱり Consul ってスゴいんすよみたいな熱い気持ちを吐露したくなったので発表資料まだぜんぜん作ってないんですけどここに発露します。 いつもは結構確認しながらエントリかくんですけど今日は一気に短時間でガーって書いたのでまちがいとかたくさんあると思いますけどごめんね。 かつて思い描いていた分散システムの未来 共有するデータによって広がる未来 伝搬システムとしても 他のプロダクトとの組み合わせ そういうわけで かつて思い描いていた分散システムの未来 なにがすごいかって、やっぱり自律分散的なところで Gossiping と Raft を使って整合性のある情報共有ができるようになっているっていうところがすごいと思うんですよ。 むかしから情報共有

    なぜぼくがConsulに心奪われるのか - 理系学生日記
  • Docker for MacでKubernetesが動かせます - 理系学生日記

    そういや、Docker for MacKubernetes が統合されていて、手軽に動かすことができたりします。 たぶん、Docker for Windows でもいけるとおもう。 Redirecting… Redirecting… 6/12 現在、stable ではなくて、edge が必要です。 Docker Hub から、 Docker CE for Mac (Edge) をダウンロード & インストールする Preference を開くと Kubernetes のタブができているので、Enable Kubernetes とかにチェックを入れて Apply を押下 心を無にして数分待ちます おわり ぼくの Mac 非力なので、さすがにちょっともっさりする。動かしたくない場合は、Enable Kubernetes を off にしましょう。 kubectl はパスが通っており、 $

    Docker for MacでKubernetesが動かせます - 理系学生日記
    fumikony
    fumikony 2018/06/15
  • BashのGlobに関わるオプション - 理系学生日記

    前に Bash の Glob に関するエントリを書きました。 他にも Glob には様々な応用があります。 あまり知られていないような使い方も多いので、それらをご紹介していくコーナーです。 extglob Glob で正規表現と not 条件を表現できるようになる。 詳細については、 BashのGlobは積極的に利用しましょう - 理系学生日記 に書きました。 nullglob 通常、Glob を指定したもののそれが合致するファイル/ディレクトリが存在しない場合、Bash は指定した Glob をファイル名として解釈します。 何を言っているかというと、これを見れば分かって頂けるでしょうか。 # *.hoge というファイルが存在しないので、Bash は '*.hoge' というファイル名をそのままコマンドに渡す $ ls *.hoge ls: cannot access '*.hoge':

    BashのGlobに関わるオプション - 理系学生日記
  • mysql-master-ha (MHA) まとめ - 理系学生日記

    諸々の事情により MHA を検証・導入しようという流れがあり、イマイチまだ全体像が見えていないのでまとめてみた。 **MHA とは MySQL のマスタを failover させスレーブをマスタに昇格させるという面倒な作業を短時間(10-30 秒と言われている)で行わせることを目的としたソフトウェア。 一般に、MySQL のマスタ・スレーブ構成を 1 対多という構成で取った場合、スレーブ間でどこまでマスタの DB 状況が反映されているかには差が生じ、これが自動 failover の妨げになっていた。MHA ではこの問題 (replication consistency problem) も解決してくれる仕組みを内在しているため、運用上のスレーブ間の DB 整合性の問題からも開放される。 - ref: Google Code Archive - Long-term storage for G

    mysql-master-ha (MHA) まとめ - 理系学生日記
  • HashiCorp社が出したVaultとはどういうものなのか - 理系学生日記

    HashiCorp 社から、新たなソフトウェアである Vault by HashiCorp がリリースされました。 - HashiCorp Blog: Vault この Vault について、Getting Started を一通り実施した後に Docs の一部を確認してみたので、簡単にその内容をまとめてみます。 Vault とは何なのか Vault を一言で言うと、機密情報(Secret) を管理するツールです。 これだけ IT が広がっている現在、機密情報の範囲も広がり続けており、データベースにアクセスするためのユーザ/パスワードや、連携するシステムの API キー等、多岐に渡ります。こういった情報、おまえのところのシステムではどう管理してた?XML に生で書いてる、あるよねそういうの。jdbc.properties に直書き、うんうんわかるわかる。ちょっとがんばったら crypt で

    HashiCorp社が出したVaultとはどういうものなのか - 理系学生日記
    fumikony
    fumikony 2015/04/30
  • シェルスクリプトで trap を忘れちゃいませんか - 理系学生日記

    trap ビルトイン、あんまし存在感ないし、いつも忘れられてるし不憫だとおもう。 trap、その名前の通り、スクリプト内で発生するシグナルをトラップして、指定した処理実行することできる。たとえば Ctrl-C 押したとき反応するみたいなの、こんなスクリプトで実現できる。 $ cat a.sh #!/bin/bash trap 'echo だるみ' SIGINT sleep 300 $ ./a.sh ^Cだるみ trap の最後の引数がシグナルなんだけど、trap は疑似シグナルとして ERR とか EXIT とか指定することできる。 EXIT: シェルスクリプト実行が終了したタイミングで実行される ERR: どっかのコマンド実行がエラーになったときに実行される EXIT を利用すると、シェルスクリプト実行の最後にだるいって出力できて、確実にだるさをアピールできるようになる。 $ cat b

    シェルスクリプトで trap を忘れちゃいませんか - 理系学生日記
  • ForwardX11Trusted は true でいいかな - 理系学生日記

    X をリモートから飛ばすときに、よく .ssh/config の ForwardX11 を yes に設定したりすると思いますが、ちょっとドキュメントを読んでると ForwardX11Trusted という設定項目が出てきた。FowardX11 の項目には An attacker may then be able to perform activities such as keystroke monitoring if the ForwardX11Trusted option is also enabled. << という文言があったことから、じゃぁ ForwardX11Trusted は no の方がいいよな、うん、という形でこれを no に設定して X をリモートサーバから飛ばしてみると、なんか Warning が出てきて大変に醜い。 |tcsh| $ ssh myhost emacs

    ForwardX11Trusted は true でいいかな - 理系学生日記
  • 1