amareloのブログ(仮)

IT系勉強会で感じた想いや知見をメインに書いていきます。

JAWS-UG朝会 #36 参加レポート

久々のブログになってしまいました。 8/4 JAWS-UG朝会 #36 に参加しましたのでレポートを書きます。

目次

イベントページ

https://jawsug-asa.connpass.com/event/245634/

セッション内容

セッション① AWSのコンテナイメージスキャン手法をまとめてみた クラスメソッド株式会社 たかくにさん

コンテナセキュリティ

  • ECRイメージスキャン(ベーシックスキャン)
    • 手動スキャン(24時間に1回)と自動スキャン
    • Clair プロジェクトのデータベースを使ってスキャン
    • 無料
    • 導入しやすい
  • ECRイメージスキャン(拡張スキャン)
    • Inspectorがサービスロールを使ってスキャン
    • 複数のデータベース(Snykなど)を使用
      • Snykのデータベースの一部を使っている
      • 有料
    • OSに加えてプログラミング言語パッケージもスキャン対象
    • Security Hub、Organizationsとの統合
  • docker scan
    • docker-scan-pluginを使ってローカルのDockerイメージに対して行うスキャン
    • Snykを使用
      • Snykとは
        • 開発者が利用するために作られたセキュリティプラットフォーム
    • 無料
  • Docker Hub上で脆弱性スキャン
    • 有料
  • Snyk Container
    • Snykデータベースを使用
    • OSに加えてプログラミング言語パッケージもスキャン対象
    • 日次や週次の定期スキャン
    • 新しいCVEが公開されたら自動でスキャン
    • 無料プラン(100回/月)と有料プランがある

資料

speakerdeck.com

セッション② インフラのテストにVPC Reachability Analyzer は外せないという話 株式会社ヌーラボ 中野雅之さん

ネットワーク疎通テスト

  • 手動でやるとサーバ増えた時に無理
  • ツールに頼る必要がある

Serverspecとawspec

  • Serverspecとは?
    • Ruby製のOSS
    • サーバのプロビジョニング状態やネットワークレベルの疎通確認ができる。
  • awspecとは?
    • AWSリソースに対する設定のテストができる
  • 気になる点
    • コンテナやALBを起点とした場合の確認は?
    • VPC Reachabbility Analyzerの使用

VPC Reachabbility Analyzer

  • AWSリソースに対するネットワークレベルの疎通テストを行うことができる
  • ただ、一度作成したパスは編集ができないので再作成する必要がある
  • ECS FargateのようなENIがコロコロ変わるリソースとは相性が悪い
    • ENIのタグ名がコンソール上では表示されないのでわかりづらい
    • AWS CLIを使う
  • Serverspecやawspecを併用して手厚いテストを実施可能

資料

speakerdeck.com

LT① シェルスクリプトAWSをいい感じに使いたい shimoさん

  • シェルスクリプトを使ってAWS操作を自動化
    • 覚えることが減る
    • 時短できる
    • オレオレ魔改造になりがちになる
  • EC2インスタンスSSH接続
    • VPC接続を確認
    • 複数EC2から選択
    • EC2を起動してIPを受け取る
      • start-instancesで起動
      • 出力は 2 > $1 > /dev/null で捨てる
    • SSHログインする
  • これらを順番に.shファイルに書いていけば出来上がり

資料

docs.google.com

LT② サーバレス開発が地味にキツイ、特にDynamoDB NTT東日本 長久保聡さん

  • 仕様変更や機能追加の時にきつくなる
  • GSIを安易に付与するとテーブル設計が崩壊する。引継ぎが辛くなる。
    • RDBみたいな構造になっていく
  • scanはscan全体で課金される。
  • マイクロサービスが上手く構築されていないのが原因

資料

※公開され次第追記

LT③ 年700万円損するサーバレスの認可システムをご紹介します!! 生活協同組合コープさっぽろ 樋口修也さん

  • 認証認可とは?
    • 認証:端末の使用者が誰かを明確にする
    • 認可:誰に何をして良いかを確認する
  • 複数APIあるとレガシーidの管理が大変
  • 認可用のAPIを作るとアクセスが集中してコストと保守工数が発生してしまう
  • Auth0上のmetadataにレガシーidを持たせる
    • 複数APIもOK
    • id変更も一括で可能
  • トークンの認可を各APIで処理するとお得になる

資料

speakerdeck.com

最後に

DynamoDBのscanはDB全体へのスキャンにお金がかかること、初めて知りました。 自分が作ったTwitter BotでDynamoDB Scan使っているので、レコード増やし過ぎないように気をつけなければと思いました。 AWS CLIシェルスクリプトの活用、まだまだやれていないことあるので、今日シェルスクリプトの話を聞けて刺激になりました。

最近ブログ更新出来ていませんでした。勉強会には色々参加しているんですが、サボり癖がついて良くないですね。。。アウトプット大事! 朝会の登壇も希望者が増えてきて内容が濃くなったので、自分が登壇する時ももっと内容と精度を高められるようにしなければ。。。