
ロール付与によるアクセスコントロール (RBAC) - ローンチウィーク #3
ローンチウィーク
2025-02-06

三橋 啓多
Co-founder, COO
MorphのRBACの概要
Morphが提供するAIアプリのためのインフラストラクチャの一つに、ユーザー認証と、ロールベースのアクセス制限があります。招待したチームメンバーには、チームレベルの権限と、プロジェクトレベルの権限を付与できます。
以下のデモでは、ダッシュボードで設定したロールに応じて、Pythonでの処理を切り替えています。
チームレベルのロール
チームレベルのロールによって、それぞれのユーザーがプロジェクトに対してどのような操作ができるかを設定します。チームレベルの権限は事前に定義されたものから選ぶことができます。
- Admin … チームのリソースに対する全ての権限を持ちます。他メンバーのプロジェクトへのアクセスも編集できます。
- Developer … プロジェクトの作成・編集とプロジェクトのデプロイができます。
- Contributor … 招待されたプロジェクトのデプロイができます
- Viewer … 招待されたプロジェクトの閲覧ができます。
プロジェクトレベルのロール
チームレベルのロールとは別に、プロジェクトレベルのロールを設定することができます。プロジェクトレベルのロールは自由な文字列で設定できます。
この文字列は、Python関数の中で、次のように使用することができます。
@morph.func
def sql_agent(
context: MorphGlobalContext,
) -> Generator[MorphChatStreamChunk, None, None]:
# context.user_info comes from user's authentication info.
if "marketing_manager" not in context.user_info["roles"]:
yield stream_chat("You are not authorized to use this feature. / please login as marketing_manager.")
return
# use LLM to generate the response
このように、ダッシュボードで設定したロールを使いこなすことで、細かな権限管理を実現することができます。Pythonで詳しくロジックを構築すれば、従来のデータツールやBIではできなかったような複雑な条件の権限管理が実現可能です。
また、これがビルトインのユーザー認証を用いて実現されているので、わざわざ社内向けアプリのために、複雑なユーザー認証フローをアプリケーション側で開発しなくても良いのが、Morphの強みです!
関連記事

ローンチウィーク #3 のお知らせ
3回目のローンチウィーク (ローンチウィーク #3) を開催します!期間は 2025年2月3日 (月) から2月7日 (金) までの5日間です。
2025-01-21

データコネクター - ローンチウィーク #3
MySQLやPostgresSQLなどのデータベース、SnowflakeやBigQueryなどのデータウェアハウス、SalesforceやHubspotなどのSaaSとのデータ接続機能をアップデート。Webアプリから簡単に設定し、SDKを使ってPythonから呼び出せます。
2025-02-05

クラウドホスティング - ローンチウィーク#3
morph deploy コマンドでの簡単デプロイ、ビルトインのユーザー認証、ロールベースの権限管理など、AIアプリを真剣に運用するために必要な機能を備えたクラウドホスティングを提供します。
2025-02-04

AIアプリ開発のためのPythonフレームワーク - ローンチウィーク #3
AIアプリの開発をさらに迅速にするため、Morphフレームワークをアップデートしました。AIアプリ開発を加速するヘルパー関数、コンポーネントの追加やクラウドリソースとの連携の強化などが含まれます。
2025-02-03