Casbin

Casbin

  • ドキュメント
  • API
  • エディター
  • IDE プラグイン
  • Single Sign-On (SSO)
  • フォーラム
  • ヘルプ
  • ブログ
  • Pricing
  • Contact Sales
  • Languages icon日本語
    • English
    • 中文
    • 한국어
    • Русский
    • Français
    • Deutsch
    • 翻訳に協力する
  • GitHub

›高度な使い方

基本

  • 概要
  • はじめよう
  • 仕組み
  • チュートリアル

モデル

  • サポートされるモデル
  • モデルの構文
  • エフェクト
  • 関数
  • RBAC
  • RBAC with Pattern
  • ドメイン付きRBAC
  • Casbin RBAC v.s. RBAC96
  • ABAC
  • 優先モデル
  • スーパー管理者

ストレージ

  • モデル ストレージ
  • ポリシーストレージ
  • ポリシーサブセットの読み込み

拡張

  • Enforcers
  • アダプター
  • Watchers
  • 派遣者
  • ロールマネージャー
  • ミドルウェア
  • GraphQL Middlewares
  • Cloud Native Middlewares

API

  • API の概要
  • 管理API
  • RBAC API
  • Domains API による RBAC
  • RoleManager API
  • データ権限

高度な使い方

  • マルチスレッド
  • Benchmarks
  • パフォーマンス最適化
  • Kubernetes の承認
  • Envoyによるサービスメッシュの承認

管理

  • 管理者ポータル
  • カスビンサービス
  • ログとエラー処理
  • フロントエンドの使用法

エディター

  • オンラインエディター
  • IDE プラグイン

もっと見る

  • Adopters
  • コントリビューション
  • プライバシーポリシー
  • 利用規約
Translate

Envoyによるサービスメッシュの承認

Envoy-authz はEnvoyのミドルウェアで、カシンを介して外部RBAC & ABAC認証を実行します。 このミドルウェアは、gRPCサーバーを介して Envoyの外部認証 API を使用します。 このプロキシは、Istio のような任意のタイプのenvey ベースのサービス メッシュにデプロイされます。

要件

  • 特使1.17+
  • Istioまたは任意のタイプのサービスメッシュ
  • grpc依存関係

依存関係は go.mod を通じて管理されます。

ミドルウェアの作業

  • クライアントはhttpリクエストを行います。
  • Envoyプロキシはそのリクエストをgrpcサーバーに送信します。
  • grpcサーバーはカスビンポリシーに基づいてリクエストを承認します。
  • 承認されると、リクエストは通過または他の方法で送信されますが、拒否されます。

grpcサーバはEnvoyの external_auth.proto からのプロトコルバッファに基づいています。

// A generic interface for perform authorization check on incoming
// requests to a networked service.
service Authorization {
  // Performs authorization check based on the attributes associated with the
  // incoming request. を選択すると、状態を`OK` かどうかを返します。
  rpc Check(v2.CheckRequest) returns (v2.CheckResponse);
}

上記のprotoファイルから、認証サーバーで Check() サービスを使用する必要があります。

使用法

  • Define the Casbin policies under config files by following this guide.

You can verify/test your policies on online casbin-editor.

  • 実行して認証サーバーを起動します:-
$ go build .
$ ./authz 
  • 利用者の構成を読み込む:-
$ enhusage -c authz.yaml -l info

使節が開始されると、許可プロセスの要求が傍受され始めます。

Istioとの統合

このミドルウェアを動作させるには、JWT トークン OF ヘッダーにユーザー名を含むカスタムヘッダーを送信する必要があります。 公式の Istio ドキュメント を確認して、 リクエストヘッダー の変更に関する詳細情報を得ることができます。

← Kubernetes の承認管理者ポータル →
  • 要件
  • ミドルウェアの作業
  • 使用法
  • Istioとの統合
Casbin
Docs
Getting StartedManagement APIRBAC APIMiddlewares
Community
Who's using Casbin?Stack Overflow
Casbin          jCasbin
Node-Casbin   PHP-CasbinPyCasbin          Casbin.NETCasbin-CPP        Casbin-RS
Follow @casbinHQ
Copyright © 2022 Casbin Organization