ソフトウェアアーキテクトのための意思決定術 - Forkwell Library #80 での発表資料です https://forkwell.connpass.com/event/342258/

はじめに Dockerをよく使う方なら避けては通れない道、Dockerコンテナのセキュリティについてまとめると同時に、Dockerfileのベストプラクティスに焦点を当てていこうと思います! Dockerのセキュリティとは Dockerのセキュリティとは、Dockerコンテナのビルド、ランタイム、オーケストレーションに関する側面を指します。 これには、Dockerベースイメージのセキュリティ対策、ユーザー権限の管理、Dockerデーモンの設定、コンテナのCPU制御など、ランタイムにおけるセキュリティ対策が含まれます。 さらに、大規模なDockerコンテナのオーケストレーションに関する課題にも対応する必要があります。 では実際にどのように対応していくのか、10項目のベストプラクティスを通して、具体的な対策を学んでいきましょう! Dockerのセキュリティに関する10項目のベストプラクティス
JWTって何? JWTはJSON Web Tokenの略です。 まずは完成されたJWTを見てみましょう。 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c この文字列がJWTです。 JWTの特徴を見てみる よく見ると、この文字列は 「.」(ドット) で区切られています。 JWTは次の3つのパーツから構成されています。 ヘッダ(Header) ペイロード(Payload) 署名(Signature) ただの文字列じゃない? JWTは単なる文字列ではありません。 実は、この「ヘッダ」や「ペイロード」をデコードすると、JSON形式のデータ
最近、AIにアンテナの高いエンジニア界隈でClineというツールが話題です。 これは元々Claude Devと呼ばれていた、VS Codeの拡張機能です。 サイドバーで生成AIとチャットしながら開発補助をしてもらえて、自分のリポジトリから必要なファイルを読み込んで理解してくれたり、ターミナルでコマンドを実行して出力を確認してくれたり、さらには必要なコードを書いたりしてくれます。 似たようなツールでCursor(カーソル)も結構前から人気ですが、Clineのいいところは いつものVS Codeに拡張入れるだけでそのまま使える どこまで手動/自動で補助してもらうか、好きな具合にカスタマイズできる 結果、コーディングしながらChatGPTやClaude.aiとエディタを往復する手間が省ける ことが大きなメリットです。私も秒でトリコになりました。 実際に試してみよう! VS Codeに拡張機能「C
blog.handlena.me 「あの頃はこれ使っていたのか〜」と振り返れるのは良さそう。ということで自分もスナップショットとして残しておこう。2025年1月現在の状況。 エディタ code.visualstudio.com 自分のdotfilesの履歴を見る限り、2016末くらいから使い始めているっぽい。Emacsから乗り換えてから8年くらい経っているのか…。 主に使っているextensionは github.copilot golang.go ms-python.python rust-lang.rust-analyzer tamasfe.even-better-toml tuttieee.emacs-mcx zhuangtongfa.material-theme など。 基本操作としてはEmacsキーバインドはやはり体に染み付いているのでそれは必須。 themeは One Dark
認可コードグラント RFC 6749で定義されるOAuthの認可コードグラントでは、認可サーバの実装として、認可エンドポイントとトークンエンドポイントの2つが必要です。リクエストは大きく分けて認可リクエスト (Authorization Request) およびトークンリクエスト (Access Token Request) の2つに分けられます。 全体のシーケンス図は以下の通りです。 PlantUMLのソースコード @startuml @startuml title 認可コードグラントにおけるシーケンス図 autonumber actor RO as "リソースオーナー" participant UA as "User-Agent" participant C as "クライアント" participant AS as "認可サーバ" participant RS as "リソースサーバ
写真などのデータを保存できるオンラインストレージを探す場合、容量や価格、機能といったさまざまな条件を比較して決めるのが一般的だ。しかし、最終的には知名度だけで決めてしまい、いざ使ってみるとしっくり来ない、そのようなパターンも多いのではないだろうか。 今回紹介する「pCloud」(ピークラウド)は、マルチプラットフォームに対応した、スイス発祥のオンラインストレージサービスだ。定番の機能はもちろんのこと、他のオンラインストレージにはない数多くの特徴を備えており、ユーザー数は世界中で約2千万人にも及んでいる。そんなpCloudの他にない機能の数々を紹介しよう。 また、ページの最後には期間限定で最大54%オフとなるお得なセール情報も併せて紹介しているので、是非チェックしてほしい。 全世界に2千万のユーザーをもつ「pCloud」の魅力とは pCloudは、サービスインから10周年を迎えたオンラインス
taro terahara @srgmtaro ちょっと、にわかには信じ難い出来事があった。先程、夜の打ち合わせ会場にたまたま居合わせた整体の方。 「ちょっと見せて貰っても良いですか?実は僕、楽器の整体もやるんですよ」 リハで、楽器の調子がおかしいという話をしていた時だった。え、なになに?楽器の整体?どーゆーこと? 2024-08-06 23:13:03 taro terahara @srgmtaro バーンスリー奏者。人生の半分以上インドの横笛バーンスリーを吹いてます。 控えめに言ってインド音楽馬鹿。ちゃるぱーさと一緒にアフガニスタンの音楽も。srgmtaro.jimdo.com (寺原太郎) note: note.com/srgmtaro srgmtaro.jimdo.com taro terahara @srgmtaro 不安気な顔で見守るみんなの視線をよそに、太鼓の枠や皮をひとしき
ritou です。 みんなが待っていたデジタル認証アプリの情報が公開されました。 開発者向けのガイドライン、APIリファレンスなどのドキュメントも公開されています。 今回は開発者視点でどんな作りになっていて、利用するために理解が必要となる標準化仕様はどのあたりなのかを取り上げます。ちょっとOIDCのRPやOAuthのClient実装経験のある開発者向け、ぐらいの内容です。 概要 公開された情報からすると デジタル認証アプリサービス(アプリ+バックエンド)はマイナンバーカードを用いた当人認証を実施 現在は都度マイナンバーカードを利用する必要がありますが、いずれはスマホに保存されたカード情報を使ってもっと楽になりそう ID連携のIdentityプロバイダとして認証イベント情報、基本4情報といった属性情報を民間/行政サービスに提供 民間/行政サービスは認証イベント情報に含まれるユーザー識別子を利
はじめに 📘 この記事は ラクス Advent Calendar 2023 の7日目の記事になります。 要件定義から基本設計、さらに実装や保守運用に至るまでの一貫した経験を何度か積んできましたが、毎回 「要件定義って具体的に何の項目が必要だっけ?」 「基本設計との違いって何だったっけ?」 「基本設計と詳細設計の区別って?」 といった疑問が頭をよぎってきました。 そんなわけで、これまでの経験を振り返りつつ、開発プロセスについて1からまとめていくことで頭の中の大掃除を行なっていきたいと思います🧹 この記事の対象者 🎯 開発プロセスについて学びたい方 要件定義の基本を学びたい人 要件定義と基本設計の違いがわからない人 一緒に開発プロセスについて復習したい方 前提 記事中の一部(特に要件定義や基本設計、詳細設計のサンプル)を自動生成で作成してます。一貫性の無い内容があるかも知れませんが、あく
週末に自分がよく使っている技術をまとめたら反応が良かったので、テンプレートを作りました。 なにかWebサービスを作るときに、自分はこれらのライブラリを基本的には入れます。 ベースはcreate-next-appとなりますが、そこで生成された状態だと認証もDBも何もありません。 しかし、サービスを作るにあたって必要なケースがほとんどです。 このテンプレートには特定のライブラリを入れると毎回書かないといけない項目等を事前に作っておき、 開発に集中できる仕組みを作るのがゴールとなります。また、例を示しつつ削除するコード量を最小限に抑えます。 主にNext.js固有のハマるポイントや環境構築などめんどくさいけど毎回書いている点をカバーします。 linterと関連があるVSCode, pre-commit等の設定NextAuthに指定されたDB Schemaの作成やAPI routeの設置開発、テス
1. はじめに こんにちは。ソーシャル経済メディア「NewsPicks」でエンジニアをしております小林です! 皆さんは英語学習に取り組んでいらっしゃいますか?エンジニアとして技術ドキュメントや国際カンファレンスの動画等で英語に触れる機会があると思います。また、技術的なスキルはあるが、英語を話すことが苦手な場合、将来的に市場でどう評価されているかの動向も気になるところです。 最新の2023年度の報告によると、世界的にITエンジニアの給与が上昇している一方、日本では前年比USドルベースで5.9%減少、現地通貨(円)ベースでもわずか0.4%増加に留まっています。残念ながら、世界と比較した時に日本の給与の優位性がなかった一年となりました。今後もこの差が開く一方であれば、個人や企業が国際市場で競争力を保つために、英語能力の向上も必要になる機会が高まっていくことを示唆しています。 しかし、「英語力を伸
先日、投稿した「死ぬほど嫌でした」という記事が大きな反響を呼びました。 日本テレビ系で放送された連続ドラマ『セクシー田中さん』原作者の芦原妃名子さんの訃報に触れて、『海猿』をめぐる僕自身の経験を語る内容でした。 その中で映画主演俳優との初対面の印象について、「嫌なヤツだと思いました」と書きました。 それに対し、俳優の伊藤英明さんが自身のインスタグラムを更新し、記事について言及しました。 「記事を読みました。 『海猿』は僕にとって一生の財産です。 (中略) 約20年前、現場に出向いて下さり佐藤先生に頂いた原画を今も大切にしています。撮影に携わった全員で過ごした時間も作品も自分の宝物です。」 thehideakiitoインスタグラムより引用 伊藤さんの大人な対応に、自分の未熟さを恥じ入るばかりです。 ところで、イラストに書かれた日付を見ると2005年となっています。 僕が撮影現場を訪れたのは2
ssmjp ssmonline #38 "第四回はたのさん祭 オンライン"( https://ssmjp.connpass.com/event/307397/ )での発表資料です。 (運用設計ラボ合同会社 波田野裕一)
こんにちは、臼田です。 みなさん、AWSのセキュリティ対策してますか?(挨拶 今回はAWSセキュリティ成熟度モデルを活用して組織のセキュリティレベルを上げよう!というイベントで登壇した内容の解説です。(ちょっと前のイベントですが) 最近私が注目しているAWSセキュリティ成熟度モデルについての解説になります。 資料 解説 アジェンダは以下のとおりです。 セキュリティ対策頑張ってるってどうやって言えばいいんだ? AWSセキュリティ成熟度モデルとは 使い方・コツ 説明できたら次のステップ セキュリティ対策頑張ってるってどうやって言えばいいんだ? まずは課題の話から。 AWSに限らずですが、セキュリティ対策はITを扱う上で基本的なことでもあり、しかし継続的に取り組まなければいけない一筋縄ではいかない課題です。 そんな中で例えば上司から「AWSのセキュリティ対策ちゃんとやってる?」と聞かれたときにあ
この記事は NTTコミュニケーションズ Advent Calendar 2023 の14日目の記事です。 こんにちは、イノベーションセンター所属の志村です。 Metemcyberプロジェクトで脅威インテリジェンスに関する内製開発や、Network Analytics for Security (以下、NA4Sec)プロジェクトで攻撃インフラの解明・撲滅に関する技術開発を担当しています。 ソフトウェア開発プロセスにおけるセキュリティに関心が高まりつつあり、サプライチェーンセキュリティという言葉も広く使われるようになってきました。 またMetemcyberプロジェクトではSBOMに関する取り組みを行っていますが、SBOMもサプライチェーンセキュリティの分野での活用が期待されている概念となります。 そこで本記事ではサプライチェーンセキュリティとはそもそも何か、具体的にどのような対策が存在するのか
こんにちは。シニアスクラムマスターの天野 @ama_ch です。 サイボウズの開発組織において、今後の成長を加速させるためには、組織の基本単位をスクラムチームのような自律的な小さなチームにしてスケールさせることが非常に大切だと考えています。サイボウズは比較的スクラムが普及している組織ではありますが、組織内のすべてのチームがスクラムを採用しているわけではありません。 フレームワークとしてスクラムを採用するかどうかはチームの自由です。しかし、健全なチーム環境を整えることはすべてのチームにとって重要です。チームやチームワークに関する情報は巷に多く存在しますが、我々のようにすでにある程度の規模で活動しているプロダクト開発組織で、チーム環境を整えるために実践的に使える情報がないことが悩みでした。 そこで、これまでのチームに関する学びと実践を踏まえ、サイボウズの開発組織の文脈において、スクラムを実践し
これまでもコンテナ関連の記事はそれなりに書いてきましたが、改めて最新事情に合わせて練り直したり見渡してみると、大きなところから小さなところまで選択肢が多すぎると感じました。 コンテナ系アーキテクチャを丸っと他所の構成で真似することって、おそらくほとんどなくて、参考にしつつ自分流に築き上げていくでしょうから、今回は築くにあたってどういう選択肢があるのかにフォーカスした変化系で攻めてみようと思った次第です:-) 目次 今年一発目の長いやつです。半分は学習教材用、半分は道楽なテイストです。 はじめに 基盤 インスタンス or コンテナ ECS or EKS on EC2 or FARGATE X86 or ARM64 ロードバランサー メンテナンス:ALB or ECS Service 共有 or 1環境毎 アクセスログ:ALB or WEBサーバー ECS / EKS デプロイ:Blue/Gr
TypeScriptとドメイン駆動設計(DDD)を組み合わせ、APIを構築するハンズオンガイドです。この本では、DDDとは何かという基礎的なところからソフトウェア開発における戦略的設計、戦術的設計まで、包括的な知識を提供します。 戦略的設計では、ビジネスの要求に合わせたドメインモデルの設計をイベントストーミングを用いて行います。その後、戦術的設計では、具体的なコードの実装に関連するDDDの原則と実践を学びます。 TypeScriptを使ってコードを書きながら、DDDの概念を実際のプロジェクトに適用するヒントを紹介します。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く