Slide 1

Slide 1 text

AWS のポリシー⾔語 “Cedar” で実現するアクセス制御 8/5(⼟) JAWS-UG 名古屋 AVAハンズオン+re:Inforceの復習

Slide 2

Slide 2 text

2 鈴⽊健⽃ 所属 アイレット株式会社(東京) 業務 AWSのインフラ構築・運⽤ → 提案 ・Japan AWS Top Engineer (2022, 2023) ・Japan AWS All Certifications Engineer (2022, 2023) ・ AWS Community Builder(Cloud Operations) ・iret テクニカルアンバサダー (2023) 自己紹介 自費で re:Invent へ行きます!!!!!!!

Slide 3

Slide 3 text

アジェンダ ❧ 本 LT の経緯 ❧ Cedar とは︖ ❧ ワークショップを通して Cedar を触ってみた 3

Slide 4

Slide 4 text

1. 本 LT の経緯 Background of this Lightning Talk

Slide 5

Slide 5 text

Security-JAWS DAYS の登壇が決まる タイトル 探せぇ︕お薦めAWSセキュリティワークショップ︕︕ 〜 怒涛のワークショップ45連戦 〜 “「AWS のセキュリティサービスに興味があるけど、どこから 始めれば良いか分からない」という⽅に向けて、全AWS公式セ キュリティワークショップの中から、個⼈的にお薦めのワークシ ョップを紹介(CfP 応募時点では全45種類)” 参考︓AWS Security Workshop https://workshops.aws/categories/Security 5 ※注意 本日確認したところ 48 種類に増えている模様 https://jaws-tohoku.doorkeeper.jp/events/156109

Slide 6

Slide 6 text

全 AWS 公式ワークショップをやる 6 以下のワークショップを⾒つける 「Cedar policy language in action」 概要 Cedarは、誰が何にアクセスすべきかを記述するポリシーとしてパーミッションを定義するための⾔語です。 Amazon Verified PermissionsとAWS Verified Accessは、アプリケーションとエンドユーザーに対して きめ細かいパーミッションを定義するためにCedarを使⽤します。 このワークショップでは、アクセス制御のためのCedarポリシーを構築することで学びます。 re:Inforce でワークショップが公開された??

Slide 7

Slide 7 text

2. Cedar とは︖ What is “Cedar”

Slide 8

Slide 8 text

Cedar とは? ❧ AWS Verified AccessやAWS Verified Permission で利⽤できるAWSのポリシー⾔語 ❧ 昨年の re:Invent 2022 にて発表 ❧ オープンソースのポリシー⾔語 ❧ 以下の特徴をもつ ・表現の幅広さ ← 今回紹介するワークショップではこれが体験できる ・⾼性能 ・分析がしやすい 8

Slide 9

Slide 9 text

表現の幅広さ スキーマと呼ばれるものを活⽤することで表現の幅広さを実現します。 スキーマとは “アプリケーションでサポートし、Cedar に認可サービスを提供させたいエンティティタイプの構造を 宣⾔したものです。Cedar は JSON を使ってスキーマを定義します。これは JSON スキーマに似ていま すが、エンティティタイプの使⽤など、Cedar の設計のユニークな⾯では若⼲の違いが求められます” 9 IAM でいうポリシーの構造(書き⽅)を⾃分で定義できる 触ってみた結果

Slide 10

Slide 10 text

スキーマの例 10 ポリシー スキーマ

Slide 11

Slide 11 text

スキーマの例 11 ポリシー スキーマ

Slide 12

Slide 12 text

3. ワークショップを通して Cedar を触ってみた Experiencing “Cedar” through workshops

Slide 13

Slide 13 text

ワークショップの前提 13 Cedar Playground という Cedar を体験できるサイトを使うため AWS アカウントにログインする必要がない (8/5 時点では⽇本語⾮対応) https://www.cedarpolicy.com/en

Slide 14

Slide 14 text

Cedar Playground でできること ① 14 ポリシーとスキーマの定義の作成

Slide 15

Slide 15 text

Cedar Playground でできること ② 15 作成したポリシーに対して実際にリクエストを送る

Slide 16

Slide 16 text

Cedar Playground でできること ③ 16 許可/禁⽌を確認

Slide 17

Slide 17 text

ワークショップの概要 ❧ Policy playground を使って Cedarについて⼀通りの概要を体験 ❧ 基本的にポリシーやリクエストを書いて「これは通る」「これは通らない」を確認 ❧ ワークショップの最後には「実際にスキーマとポリシーを⾃分で書いてみよう」的な 応⽤問題もある → 答えもあるので、「似たようなアクセス制御を実現したい」となった際の サンプルとしても使える 17

Slide 18

Slide 18 text

ワークショップに出てくる例題① 18 ・⾃分がアップロードした写真は⾒れるがそれ以外は⾒れない ・⾃分の家族があげた写真は⾒ることができるがそれ以外は⾒れない ・特定のタグがついている写真だけを閲覧することができる

Slide 19

Slide 19 text

ワークショップに出てくる例題② 19 ・Git アプリケーションもあるよ

Slide 20

Slide 20 text

感想 ❧ IAMやS3のバケットポリシーやKMSのキーポリシーを書いたことがあれば ⽐較的理解できる ❧ AWS Verified AccessやAWS Verified Permissionといったサービスを検証する際に 実際にリソースを作成してしまうと費⽤が発⽣してしまうが、 Cedar Playground を使えば、無料で Cedar のポリシーやスキーマの検証ができる ❧ AWS Verified AccessやAWS Verified Permissionといったサービスを 実際に触るわけではないので、「AWSのサービスでどう使うのか」という 応⽤場⾯のイメージは付きづらい 20

Slide 21

Slide 21 text

Big concept Bring the attention of your audience over a key concept using icons or illustrations 21 参加登録はこちら 懇親会登録はこちら #jawsfesta #jawsfesta2023 #実行委員長発見 ←この人 (@east_takumi) が実行委員長です! もし現地で⾒かけたら 上のハッシュタグを付けて 通報 Tweet しよう︕︕