オープンソース認可エンジン

高速・シンプルな
アクセス制御

きめ細かな認可を独立したエンジンに委ねます。ポリシーは読みやすく、一元管理され、異なる言語と技術スタックに対してミリ秒単位で決定を返します。

v1.6.0 · Go 1.26/1.27 · 6 つの SDK · Playground はブラウザで動作
リリースノート
はじめに

Speedle をはじめる

ブラウザでポリシーを実行し、アプリケーションに SDK を追加するか、自分のマシンでエンジンを実行します。

Playground で試す

ブラウザで SPDL ポリシーを編集し、認可リクエストを送って決定を確認します。インストールは不要です。

Playground を開く

SDK を選ぶ

Speedle SDK はアプリケーションから認可決定 API を呼び出します。言語を選んでください。

ローカルで Speedle を実行

クイックスタートに従って、ローカル環境で Speedle を実行し、最初のポリシーを評価します。

クイックスタートを読む
Speedle について

認可制御を
アプリコードから分離

Speedle は、クラウドネイティブおよび従来型環境において、ユーザー、サービス、ワークロードの RBAC および ABAC 決定を外部化する汎用認可エンジンです。

多言語システムのための単一エンジン

異なる言語で書かれたサービスが一連のポリシーを共有し、一貫した認可結果を Speedle に問い合わせます。ポリシーの保守は一元的に行えます。

オープンソース設計、柔軟な拡張。 Speedle は Universal Permissive License を採用し、オープンに進化を続けています。

プロジェクトの歴史を読む

Speedle の構成要素

  • SPDL ポリシー定義言語
  • ポリシー管理サービス (PMS)
  • 認可決定サービス (ADS)
  • コマンドラインツール (spctl)

完全なサービスとしてデプロイすることも、既存のインフラストラクチャに必要なコンポーネントのみを組み込むことも可能です。

本プロジェクトはオープンソースプロジェクト Oracle Speedleから派生したものです。完全な経緯についてはAbout ページをご覧ください。

機能

きめ細かな制御とシンプルな運用

明確で読みやすいポリシー、高速な決定、一元管理、柔軟な統合。

シンプルなポリシー言語

読みやすい SPDL で誰が何を実行できるかを明確に定義。

詳細を見る

クラウドネイティブ

マルチクラウド環境で動作し、プラグ可能なインターフェースを通じて現代的なインフラと連携。

詳細を見る

リアルタイムポリシー検出

実際のアクセスを記録し、実行可能な認可ポリシーを自動生成。

詳細を見る

RBAC / ABAC

ロールと属性を組み合わせて、より精密なアクセス制御を実現。

詳細を見る

集中管理

複数のサービスにまたがる認可ポリシーを1か所で一元管理。

詳細を見る

接続可能なアイデンティティ

特定のアイデンティティプロバイダに依存しません。アプリケーションが認証したユーザー、グループ、属性を Speedle に渡し、決定を受け取ります。

詳細を見る

任意のストレージ

etcd を使うか、永続化インターフェースを実装して独自のストレージに接続します。

詳細を見る
SPDL

人が読める
ポリシー

誰がどのリソースにどの操作を実行できるかを記述し、必要に応じて条件を加え、認可ルールを業務ロジックから分離します。

SPDL を見る
library.spdl
# 従業員は図書を閲覧し、借りることができます
grant group employee read,borrow book

# 拒否が許可より優先されます。図書カードが無効な場合、Bob は借りられません
deny user bob borrow book if is_card_valid == false
コミュニティ

Speedle の発展に参加する

Speedle はオープンに保守されています。問題の報告、ドキュメントの改善、Pull Request の送信を歓迎します。

Speedle に貢献する