過去の桐井戸端BBS (桐ver.5)
29245 【桐5】利用者コードを毎回入力してからcmdを実行させたい 浪速のあきんど 2005/03/04-19:04
個人情報保護法対策として ファイルに利用者コードを設定しました。
これまでは起動時に-uパラメーターを使っていたのですが
これでは利用者コードの意味がなくなってしまいますので
利用者コードを毎回入力してから 従来のcmdを実行させたいのですが
どうすればいいのでしょう?
どなたかお知恵を貸してくださいませんでしょうか。
29259 毎月変わるパスワードチェックをしているふりをする修正 宮城 2005/03/05-15:05
記事番号29245へのコメント
浪速のあきんどさん、利用者コードよりはこんなのを一括処理の
冒頭に入れたら、それっぽくは見えるでしょう。CMD読まれたら
丸見えという実態はともかくとして。(^^;;

&STR=#全角(#文字列反転(¥
      #文字列(#西暦年(#年月日))+#文字列(#月(#年月日),2)))
キー入力 (10,10)¥
,プロンプト="個人情報保護法の定めるところによりアクセス権限を審査します。"¥
,&選択ファイル名
ケース開始
 ケース(&STR<>&選択ファイル名)
  確認 "認証されませんでした。残念!  "
  終了
 ケース その他
  確認 "アクセスを許可します。Congratilation!  "
ケース終了


29262 Re:アクセス記録もとってみる 宮城 2005/03/05-16:25
記事番号29259へのコメント
3回までは入力ミスとして再入力を認めるとともに、アクセス記録
(こんなの安易に義務づけるなと言いたい!)もとっちゃう。

4回以上ミスると(間延びした)不正アクセス警報が鳴り渡るとか。

アクセス記録.tblの構造は自明につき省略。

&選択件数=0
確認 "個人情報保護法の定めるところによりアクセス権限を審査します。  "
名札 認証もどき
&STR=#全角(#文字列反転(¥
      #文字列(#西暦年(#年月日))+#文字列(#月(#年月日),2)))
キー入力 (10,10)¥
,プロンプト="氏名(間にスペース)パスワードを入力してください。"¥
,&選択ファイル名
&置換式=#部分列(&選択ファイル名,1,#文字位置(&選択ファイル名," ")-1)
&選択ファイル名=#部分列(&選択ファイル名,#文字位置(&選択ファイル名," ")+1)
ケース開始
 ケース(&STR<>&選択ファイル名)
  ケース開始
   ケース(&選択件数<3)
    確認 "入力ミス!  "
    &選択件数=&選択件数+1
    分岐 認証もどき
   ケース その他
    確認 "認証されませんでした。残念!  "
    BEEP 10
    表 "個人情報Xアクセス記録"
    行追加 終了状態=&件数¥
       ,[年月日]=#年月日¥
       ,[時刻]=#時刻¥
       ,[アクセス者名]=&置換式¥
       ,[使用パスワード]=&選択ファイル名¥
       ,[認証結果]="不正アクセス"
    終了 表 編集対象表
    終了
  ケース終了
 ケース その他
  確認 "アクセスを許可します。Congratilation!  "
  表 "個人情報Xアクセス記録"
  行追加 終了状態=&件数¥
     ,[年月日]=#年月日¥
     ,[時刻]=#時刻¥
     ,[アクセス者名]=&置換式¥
     ,[使用パスワード]=&選択ファイル名¥
     ,[認証結果]="認証"
  終了 表 編集対象表
ケース終了
代入 &STR="",&選択ファイル名="",&置換式=""¥
  ,&選択件数=0,&件数=0

29266 Re:【桐5】利用者コードの入力 T.Samura 2005/03/05-20:15
記事番号29245へのコメント
浪速のあきんどさん、こんにちは。

 状況がよく把握できませんが、単に -u パラメーターを付けなければ桐起動時に利用者コードを聞いてきますが、
そう単純でもないようですね。
 これまで利用者コードを設定してなかったファイル(表ファイルですよね?)に、
利用者コードを設定したので、ファイルアクセス操作の都度利用者コードを入力させたいといった要望でしょうか。
 桐V8(V7かも)以降だと一括処理コマンドに「利用者コード【<文字列>|会話|】」で会話を指定すれば
利用者コードの入力を強制できますが、V5だと「会話」オプションが無いので、
一旦「利用者コード」のみ実行し利用者コードなし状態にし、
キー入力コマンドで利用者コード文字列を入力させ「利用者コード <文字列>」で入力した文字列を利用者コードに設定させるとか。
キー入力コマンドの入力文字を画面にエコーバックさせない方法はどこかで見た気がします。
 おっしゃられる「>利用者コードを毎回入力」がどのタイミングかで対応が違いますので「桐起動時」「対象表ファイルが
切り替わる時」「一括処理実行時」「その他」がはっきりすればコメントが得やすいと思います。
29267 Re:アクセス記録もとってみる 浪速のあきんど 2005/03/05-22:54
記事番号29262へのコメント
宮城さん 早速のレス ありがとうございます。

思いもつかない角度からの発想に感服しました。
ただ 現在私がやりたい事とは少しギャップが大きそうです。

今回は うちの仕入先メーカーから 個人情報保護に関するチェックシートなるものが届きまして、その中の項目に
「個人情報を含むファイルにはパスワードがかかっていますか?」というのがあり、
うちのデータも何か管理が必要なのでは ということで、
桐で管理しているお得意様名簿の表ファイルに利用者コードを設定したところから始まったトラブルなのです。

(利用者コードのセキュリティレベルの議論もあるようですが・・・。
簡単に開けれる自転車の錠前でも かけないよりはましですよね)

29268 Re:【桐5】利用者コードの入力 浪速のあきんど 2005/03/05-22:57
記事番号29266へのコメント
T.Samuraさん こんにちは。

初心者の域を出ておりませんので質問内容に不明な点が多々ございました事お詫びいたします。

桐7.1も利用しておりまして、こちらのほうは
それぞれのファイルに利用者コードを設定してやれば
cmdファイルを実行した際にtblファイルの立ち上がる前に
利用者コードの入力画面が自動的に出てくるようになりました。

それに対して桐5は
c:\KIRIV5\KIRI.EXE -u c:\KIRIV5\data\meibo.cmd
(meibo.cmdでは利用者コードを設定したmeibo.tblをオープンさせています。)
を含んだbatファイルを起動させると
「この処理は許可されていません」の表示があり
表の部分のコマンドエラーで落ちてしまいます。
batファイルの-uの後にパスワードを記入すれば実行してくれますが
これだと何もしていないのと同じですね。

c:\KIRIV5\KIRI.EXE
だけで起動させて利用者コードを入力し
桐のメニュー画面に入ってから一括処理の実行をすればいいだけなのですが
ずいぶん長い間桐のオリジナルメニュー画面を見ていませんでしたので
簡単に処理が可能なら これまでのやり方に利用者コードの入力を
プラスさせることができないものかと思った次第です。
どうぞよろしくお願いいたします。
29276 Re:【桐5】利用者コードの入力 T.Samura 2005/03/06-09:31
記事番号29268へのコメント
>c:\KIRIV5\KIRI.EXE -u c:\KIRIV5\data\meibo.cmd
>c:\KIRIV5\KIRI.EXE c:\KIRIV5\data\meibo.cmd
桐V5ではどちらも利用者コードの入力画面は出ないのですね。知りませんでした。

>c:\KIRIV5\KIRI.EXE
だけだと利用者コード入力画面は出るけれど、その後桐のメニュー画面になってしまい、
使用者が指定の一括処理を選んで実行させる作業が必要になってしまうので、
なるべく従来処理と変わらない手順で出来ない物かと言うのが要望だと思います。

セキュリティがらみの相談ですのでバッチファイルや一括処理内でのコード入力はしないで、素直に桐の
利用者コード入力画面を使用すべきだと思います。
c:\KIRIV5\KIRI.EXE -Pc:\KIRIV5\data
なら、利用者コード入力画面が出て、データパスが c:\KIRIV5\data になるので、少しは一括処理実行での
meibo.cmd の指定が楽になると思います。

他の適切な方法が思い浮かばないので、セキュリティ強化の為には使用者の手順が増えるのは仕方が無いかなと思います。
29279 Re:【桐5】利用者コードの入力 Ogo 2005/03/06-11:50
記事番号29268へのコメント

>簡単に処理が可能なら これまでのやり方に利用者コードの入力を
>プラスさせることができないものかと思った次第です。

宮城さんの書いた方法をちょっと応用すればいいだけでは?
下のサンプルは2〜3難点がありますが……

--- ChkPwd.CMD ---

代入 &選択件数=0,&実行リターン=1
名札 パスワード確認
画面消去 *
画面表示 (8,10),"これから「ほにゃほにゃ」システムを実行します"
*               ↑本来のシステム名
確認 "パスワードを入力して Enter する必要があります"
代入 &選択ファイル名=""
キー入力 (12,10),プロンプト="パスワードを入力して Enter して下さい → ",モード=確定,終了
状態=&実行リターン,&選択ファイル名
利用者コード &選択ファイル名
 条件 (&実行リターン<1) 中止
代入 &選択ファイル名=""
表 "サンプル.TBL",更新=許可,リトライ=しない,終了状態=&実行リターン
*  ↑ このシステムの中で同一の利用者コードが設定されているものを1つ
ケース開始
 ケース (&実行リターン>0)
  中止 表 *
  一括処理実行 "本来の.cmd"

 ケース (&選択件数>1)
  中止 表 *
  確認 "パスワードが違います。権限の無い人は実行禁止です。"
  中止

 ケース その他
ケース終了
中止 表 *
代入 &選択件数=&選択件数+1
確認 "パスワードが違います。(Enter:やり直し, ESC:中止)",&実行リターン
 条件 (&実行リターン<1) 中止
分岐 パスワード確認

29289 Re:【桐5】利用者コードの入力 浪速のあきんど 2005/03/06-19:21
記事番号29279へのコメント
Ogoさん こんにちは
まさに私の欲しかったのがこれです。
セキュリティにはこれで万全 というのはないでしょうが
せめてこれぐらいは という意味では かなり大きな進歩かと思います。
どうもありがとうございました。

ついでに 桐のバージョンアップもして キャンペーンの
ロックシステムも検討してみるべきかもしれませんね。
(個人的には利用者コードより危険度が高そうに思いますが ひとつよりふたつ ですね (^。^))

戻る