このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
役割ベースのアクセス
メモ
ロールベースのアクセスは、スタンドアロンのMATLAB® Web App Server™製品でサポートされており、 MATLAB Compiler™に含まれる開発バージョンではサポートされていません。 $。詳細については、MATLAB Web App Server の違いを参照してください。
前提条件
webapps_app_roles.json
ファイルの作成
サーバー上でロールベースのアクセスを有効にすると、どのユーザーがアプリを作成できるか、どのユーザーがアプリを使用できるかを決定できるようになります。
MATLAB Web App Server は、役割ベースのアクセスの 2 つの役割、作成者 と ユーザー をサポートします。
作成者 は、 MATLAB Web App Serverから Web アプリを追加、削除、実行できます。作成者 には、サーバーのホームページにManage Appsボタンが表示されます。
「ユーザー」は、MATLAB Web App Serverホーム ページからのみ Web アプリを実行できます。「ユーザー」には、サーバーのホームページに「Diagnostics」ボタンが表示されます。
ロールベースのアクセスとポリシーベースのアクセスを使用して、サーバー上でアプリを実行できるユーザーとアプリを変更できるユーザーを詳細に決定できます。詳細については、ポリシーベースのアクセスを参照してください。
ロールベースのアクセスを有効にするには:
SSLが有効になっているかどうかを確認します。詳細については、SSLを有効にするを参照してください。
認証が有効になっているかどうかを確認します。詳細については、認証を参照してください。
webapps_app_roles.json
という名前のファイルを作成し、webapps_private
フォルダーに配置します。webapps_private
フォルダーは次の場所にあります。オペレーティング システム フォルダーの場所 Windows®
%ProgramData%\MathWorks\webapps\R2023b\config\webapps_private
Linux®
/local/MathWorks/webapps/R2023b/config/webapps_private
macOS
/Library/Application Support/MathWorks/webapps/R2023b/config/webapps_private
webapps_app_roles.json
の JSON スキーマは次のとおりです。{ "version": "1.0.0", "appRoles": [ { "id": "User", "description": <Text describing the User role>, "users": { <Attribute name and values to identify end-users assigned to User role> }, "groups": { <Attribute name and values to identify groups assigned to User role> } }, { "id": "Author", "description": <Text describing the Author role>, "users": { <Attribute name and values to identify end-users assigned to Author role> }, "groups": { <Attribute name and values to identify groups assigned to Author role> } } ] }
"バージョン":JSONスキーマのバージョンを指定します。R2023b のデフォルト値は
1.0.0
です。ID:ロール名を指定します。
User
またはAuthor
のいずれかを指定できます。これら 2 つの役割のみがサポートされています。"説明":各ロールの説明を指定します。以下に例を示します。
"description" : "An Author can upload, delete, and execute web apps."
ユーザー:「作成者」または「ユーザー」の役割を引き受けることができる一連の認証済みエンド ユーザーを一意に識別する属性を指定します。
属性名は、使用している認証のタイプによって異なります。
たとえば、認証に LDAP を使用している場合は、次のように JSON スキーマを入力できます。
上記のスキーマでは、エンドユーザーが認証されると、 MATLAB Web App Serverは、認証されたユーザーが属性として"users":{ "email": ["bishop@example.com", "queen@example.com"] }
email
を持っているかどうかを確認します。そして、属性値 (この場合は電子メール アドレス) がスキーマにリストされているかどうかを確認します。両方のチェックが成功すると、エンドユーザーにロールが割り当てられます。グループ:「作成者」または「ユーザー」の役割を引き受けることができる認証されたエンド ユーザーのグループを一意に識別する属性名と対応する値を指定します。
属性名は、使用している認証のタイプによって異なります。グループ を使用すると、エンドユーザーのセット全体に一度にロールを割り当てることができます。
たとえば、認証に LDAP を使用している場合は、次のように JSON スキーマを入力できます。
上記のスキーマでは、エンドユーザーが認証されると、 MATLAB Web App Serverは、認証されたユーザーが属性として"groups": { "memberOf": [ "CN=Marketing,OU=Mail,DC=ldap,DC=example,DC=com", "CN=Development,OU=Mail,DC=ldap,DC=example,DC=com"] }
memberOf
を持っているかどうかを確認します。そして、属性の値がスキーマにリストされているかどうかを確認します。両方のチェックが成功すると、エンドユーザーにロールが割り当てられます。スキーマで指定される属性は、集合属性またはグループ属性である必要があります。
ヒント
一意のエンド ユーザー セットを取得する唯一の方法でない限り、各ロールのスキーマに
users
とgroups
の両方を指定する必要はありません。User ロールの
users
users
の属性を使用して一連のユーザーを識別する場合は、ユーザーのセットを識別するための「作成者」ロール。groups
についても同様の条件となります。
MATLAB Web App Server は、 User ロールをチェックする前に、認証されたユーザーが Author のロールを引き受けることができるかどうかをまずチェックします。両方の役割に対するチェックが失敗した場合、エンドユーザーはサーバーへのアクセスを拒否されます。
LDAP 認証用のwebapps_app_roles.json
ファイルの例
{ "version": "1.0.0", "appRoles": [ { "id": "User", "description": "A User can only execute web apps.", "groups": { "memberOf": [ "CN=Marketing,OU=Mail,DC=ldap,DC=example,DC=com", "CN=Development,OU=Mail,DC=ldap,DC=example,DC=com" ] } }, { "id": "Author", "description": "An Author can upload, delete, and execute web apps.", "users": { "email": [ "bishop@example.com", "queen@example.com" ] } } ] }
webapps_app_roles.json
Azure AD 認証用ファイルの例
{ "version": "1.0.0", "appRoles": [ { "id": "User", "description": "A User can only execute web apps.", "groups": { "groups": [ "1a23456-ab2c-4444-a123-12345b3a81af", "2b3456cd-e8ed-4fcf-ac55-6b79b0781eed " ] } }, { "id": "Author", "description": "An Author can upload, delete, and execute web apps.", "users": { "email": [ "bishop@example.com", "queen@example.com" ] } } ] }
注意
webapps_app_roles.json
の JSON スキーマ構文は厳密に適用されます。スキーマ構文にエラーがあると、サーバーが起動しなかったり、ログインしようとするとサーバーへのアクセスが拒否されたりする可能性があります。