サポート > Wagby定義ファイル > 14 権限管理 > モデル項目に読み込み専用権限を設定する
特定の権限をもった利用者のみ更新できる項目を設定する方法を説明します。
実行例
ここでは、「顧客」というモデルにおけるいくつかの項目に権限を付与し、特定の利用者(アカウント)からのみ更新できるという例を示します。(閲覧は可能です。)
権限を持たない利用者は、更新画面において、図1のように「メールアドレス」「携帯電話番号」「住所」という 3 つの項目が編集できません。ラベル部分もグレー色で表示されています。つまりこの利用者は、モデルの更新そのものは可能ですが、これらの項目については更新できません。
設定方法
まず「顧客(customer)」というモデルを用意します。このモデルには、氏名やメールアドレス、携帯電話番号、住所といった個人情報が含まれています。
ここで「メールアドレス」と「携帯電話番号」、「住所」の3項目について、権限の設定を行います。権限を設定するのは、モデル定義シートの上部にある「権限定義」ボタンを押して表示される画面です。
権限定義シートでは、まず「プリンシパル」を設定します。プリンシパルとして「個人情報(privatedata)」を追加します。なおNo.1の「一般ユーザ」はあらかじめWagbyが用意しているプリンシパルです。仕様に合わせて変更・追加することも可能です。ここでは1プリンシパルに対してデータ閲覧、検索、更新、登録、削除といった9パーミッションを指定しています。すなわち、当モデルに関しては、設定された処理を行うことが可能な権限、となります。
次に権限設定シートにパーミッションを設定します。「メールアドレス(email)」「携帯電話番号(mobilephone)」「住所(address)」それぞれに、「perm_email」「perm_phone」「perm_addr」というパーミッションを追加し、「個人情報」プリンシパルと関連付けを行います。
最後にモデル定義シートに戻り、制限したい項目について、「更新権限」の欄にそれぞれパーミッション名を入力します。
権限の割当
Wagby定義ファイルを変更してWebアプリケーションをビルドした後、利用者(アカウント)に適切な権限を付与します。
ここでは「guest」ユーザアカウントを用いて説明します。 管理者(admin)でログオンした後、「管理処理」メニューの「アカウント一覧表示」からユーザを選択し、「更新画面表示」ボタンをクリックすると、次のような「プリンシパル」という項目が表示されます。
「guest」 ユーザでログオンし、顧客情報の詳細表示を行ってみます。あらかじめ管理者等で新規にデータを登録しておいてください。「guest」ユーザでは、設定した権限の制約により「メールアドレス」「携帯電話番号」「住所」の3項目だけ編集できない状態になっています。これらの項目のラベル部分の文字が灰色に変わっていることがわかります。







