Slide 1

Slide 1 text

アクセス制御ライブラリ
 Casbinを使ってみた


Slide 2

Slide 2 text

自己紹介 
 名前:つざき (Twitter @820zacky)   
 所属:
 
 PHPer・Laravel歴:1.5年
 マイブーム:公園で懸垂
 


Slide 3

Slide 3 text

はじめに

Slide 4

Slide 4 text

はじめに Laravel製プロダクトの管理画面に ロールベースのアクセス制御を導入するのに Casbinを使って便利だったので、 どんなものか紹介します。

Slide 5

Slide 5 text

Casbinとは?

Slide 6

Slide 6 text

Casbinとは? さまざまなアクセス制御モデルをサポートする Authorization(認可)ライブラリ Go, Java, C/C++, Node.js, Javascript, PHP その他もろもろの言語をサポート https://casbin.org/

Slide 7

Slide 7 text

Casbinとは? 対応しているアクセス制御モデル - ACL: アクセス制御リスト - RBAC: ロールベースアクセス制御 - ABAC:属性ベースアクセス制御 など https://casbin.org/

Slide 8

Slide 8 text

Casbinとは? https://casbin.org/

Slide 9

Slide 9 text

モデル定義ファイルを編集することで さまざまなアクセス制御モデルに柔軟に対 応できる Casbinとは?

Slide 10

Slide 10 text

このように特殊な式を使ってモデルを定義する

Slide 11

Slide 11 text

ロールベースはこちら 基本的なものはテンプレあり

Slide 12

Slide 12 text

Laravelでの使い方

Slide 13

Slide 13 text

php-casbin/laravel-authz というパッケージを使う

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

設定ファイルをpublishして ルール保存テーブルをmigrateする

Slide 16

Slide 16 text

ルールを追加する

Slide 17

Slide 17 text

権限があるか問い合わせる

Slide 18

Slide 18 text

middlewareを使って ルートごとに制御 

Slide 19

Slide 19 text

便利なメソッドもいろいろ

Slide 20

Slide 20 text

まとめ - Casbinは色々なアクセス制御モデルに対応している - Laravelでも便利に使える - Casbinいいぞ

Slide 21

Slide 21 text

No content