みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっています。
テーブル ユーザマスタ
フィールド コード、アカウント、パスワード、アクセス権セット
レイアウトのアクセス権セットにスクリプトトリガOnObjectModifyにスクリプト
エラー処理[オン]
If[ユーザマスタ::アクセス権セット="閲覧のみ"]
アカウントを追加[アカウント名:ユーザマスタ::アカウント;パスワード:●●●]
アクセス権セット:[閲覧のみアクセス]
アカウントの有効化[アクティブにする]
Else If[ユーザマスタ::アクセス権セット="入力のみ"]
アカウントを追加[アカウント名:ユーザマスタ::アカウント;パスワード:●●●]
アクセス権セット:[データ入力のみ]
アカウントの有効化[アクティブにする]
Else
アカウントを削除[アカウント名:ユーザマスタ::アカウント]
End If
レイアウトの新規コードでコード、アカウント、パスワード、アクセス権セットを入力すると、ファイル→管理→セキュリティで名前、アクセス権セットがきちんと追加されています。
しかし、変更が上手く反映されません。
レイアウトのアカウントやアクセス権セットを変更しても、ファイル→管理→セキュリティで名前、アクセス権セットが更新しないのです。
よろしくご教示お願いします。
Offline
> レイアウトのアカウントやアクセス権セットを変更
これの意味は。ユーザーマスタの情報を変更、ですか。
アカウント名やアクセス権セットの変更は、スクリプトではできません。旧アカウントを削除して、新しく作れば、その代わりになります。
Offline
いつもありがとうございます。
Shin様の言うとおり、ユーザーマスタの情報を変更です。
このHPを参考に作成しました
https://qiita.com/tyuma/items/7913c6ef208f2ba40bcc
文中に「アクセス権セットを適当に設定していますが、社員の部署やランクによって設定する分岐を入れるとさらに詳細なアクセス権のコントロールができます。」
とありましたので、単純にスクリプトを追加したのですが、やはり駄目ですね。
一度旧アカウントを削除したのちに、新しく作る方法しかなさそうですね。
Offline
アクセス権のような微妙な情報の変更を、 Modify トリガーで起動するのはいかがなものか、と思いますが。タイプミスなど間違った情報を入力して、そのまま確定してしまうと、不都合では。
ユーザーマスターを触るのは管理者だけでしょうから、レイアウトにボタン、が最適だと思います。
そのページの一連の情報は、ユーザーのパスワードを平文でマスターに登録しておく構造のようですし、業務用の仕様ではないでしょう。実務経験の少ない内製の開発者がテクニックだけを見せているように思います。
それと、アクセス権のコントロールを行うのはアクセス権セットの設定であって、そこの分岐では無いですよ。
Last edited by Shin (2019-11-29 10:19:24)
Offline
Shin様
いつもありがとうございます。
FileMakerはなかなか難しいです。
レイアウトにボタン等考えてみます。
これからもよろしくお願いします。
Offline
> FileMakerはなかなか難しいです。
一般的な SQL系などの DBMS でデータベースを構築すると、この辺りのアクセス制限も自分で組み立てる事になり、総合的に矛盾なく動作させる構築力が必須で、慣れるまではかなり面倒です。その代わりに、自由度は非常に高いです。
FileMaker ですと、総合的な構築力は必要ですが、ある程度の枠組みがあり、それを設定してくだけですので、かなり楽です。(自由度は少し落ちますが)
Last edited by Shin (2019-11-29 18:12:54)
Offline
Shin様
いつもありがとうございます。
初心者にはまだまだハードルが高いです。勉強あるのみです。
再び質問です。
「ユーザーマスターを触るのは管理者だけでしょうから、レイアウトにボタン、が最適だと思います。」
これはユーザマスタにセキュリティに移動するボタンという意味なのでしょうか。
よろしくお願いします。
Offline
違います。アカウントを作成するスクリプトを起動するボタンです。
そのスクリプトをトリガーで起動するのはやめるほうがいいでしょう。間違いを起こす元です。
ユーザーマスターからのアカウント管理が必要なほどの、大規模なシステムを構築するのですか。
Last edited by Shin (2019-11-29 18:40:02)
Offline
いつもありがとうございます。
20人ほどで使用する顧客名簿になります。
10人ほどが名簿に入力のみ、閲覧が10名ほどになります。
誰がいつ入力して、誰がいつ閲覧したか、ログをとりたいと思っています。
よろしくお願いします。
Offline
20人程度でしたら、単ファイルなら、手動で管理でもいいのでは。
アクセス権セットも2セットでよさそうですし。
作ってみたいのでしたら頑張ってください。
> 誰がいつ入力して、誰がいつ閲覧したか、ログをとりたい
これと、アカウントの管理は全く別の問題でしょう。
レコードを開く時点で、レコード情報、アカウント情報を新規レコードに保存していくテーブルをつくればいいだけですよ。
Last edited by Shin (2019-12-02 11:01:05)
Offline
いつもありがとうございます。
アカウントの管理と別問題????
セキュリティのアカウント名、パスワード、アクセス権は「ゲストは閲覧のみ」「ユーザは入力のみ」「管理者は全アクセス」
ユーザの個人名とセキュリティのアカウント名、パスワード、アクセス権の設定の方法やユーザの個人名でいつ誰がは繋がっていると思っていました。
セキュリティ、ログイン、ログのつながりが未だ理解できていないようで、説明も上手くできません。
もう少し勉強します。
Offline
アクセス権の設定は、あくまでそのアカウントでの制限(動作の許容)です。作成は、管理者が行います。(システムの設計で、ユーザー自身が行う様になっていることもありますが、これはシステムが作成したのと同じです)
ログは、そのアカウントでログインしたユーザーが、どのような動作をしてきたかを記録しているものです。作成はシステムが行いますが、それを起動するのはユーザーの行動です。
例をあげてみると、
ホテルに宿泊するとします。チェックインがログインです。そこで鍵をもらいますが、それがアカウントと考えましょう。
その鍵で、クラブフロアへ出入りできるか、制限がかかっています。また、自分の部屋にしか入れませんね、アクセス制限です。
ホテルに出入りするたびに、鍵をフロントに預けます。ログイン・アウトと同じですね。レストランで食事をしました。支払いを部屋付にすると、鍵のデータで伝票ができますね。これもログの一種です。
Last edited by Shin (2019-12-02 13:03:03)
Offline
いつもありがとうございます。
わかりやすい例をあげていただいて少し理解しました。
鍵には、アカウント名と制限が付いています。アカウント名と制限を設定するのは、管理者がファイル→管理→セキュリティで設定する。
ここまではあっていますか。
よろしくお願いします。
Offline
その通りです。
#8までは、アカウントを、ユーザーを管理するマスターテーブルから設定する、という話です。
Offline
ありがとうございます。
管理者がファイル→管理→セキュリティで設定する。と
テーブル ユーザマスタ
フィールド コード、アカウントとどのように設定するのかよくわかりません。
Offline
シンプルに管理者がファイル→管理→セキュリティで設定する。で行うこととなりました。
色々凝って作成すると後々大変になる気がしました。
ありがとうございました。
Offline
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 601.96 KiB (Peak: 618.87 KiB) ]