0

SAS メタデータ サーバーにアクセスして検証するために Windows パスワードを必要とするサインオン スクリプトがあります。

問題は、Windows パスワードが変更され、スクリプトが更新されずに数回実行されると、ユーザーがロックアウトされ、IT サポートに連絡してパスワードをリセットする必要があることです。

Base SAS (9.1.3) を使用して Windows パスワードを検証する最も簡単な方法は何ですか? つまり、提供されたパスワードが有効でない場合にユーザーへの警告を有効にするには...

編集:

問題は、これを行うべきかどうかではなく、どのように行うことができるかだけです!

4

3 に答える 3

0

ソリューションはWindowsのパスワードとITグループに関係しているようです。あなたが説明するようなスケジュールされたジョブを持つプロジェクトのほとんどは、制限された権限と静的パスワードを持つ特定のユーザーの下で実行されます。

あなたのソリューションはIT部門内にあり、洗練されたSASログオンスクリプトではないと思います。

于 2009-03-31T15:54:25.193 に答える
0

SAS 9.2 を使用していますか? もしそうなら、基になるホスト オペレーティング システム アカウントを必要とせず、カスタム有効期限ルールで構成できる内部アカウントを使用できますか?

于 2009-03-31T16:20:09.580 に答える
0

これは、フラグを使用して非常に簡単に確認できます。フラグが「オン」の場合、SAS はスクリプトを実行しません。フラグが「オフ」の場合、SAS はスクリプトの実行に進みます。これにより、パスワードのリセットの問題がなくなります。それをユーザーにどのように伝えるかは、あなた次第です。

擬似コードの EG sas スクリプト:

if flag_is_on then do;
  communicate message password is invalid; ** THIS IS OPTIONAL.  YOU COULD JUST KEEP THE NOTIFICATION BELOW AND REMOVE THIS ONE. OTHERWISE YOU WILL RECEIVE MULTIPLE NOTIFICATIONS;
  endsas; ** QUITS SAS. NOTHING ELSE IS RUN;
end;
else do;
  flag_is_on = 1;
  run the rest of your program including login attempt;

  if program_ran_successfully then do; ** POSSIBLY USE SYSERR AND SYSMSG TO DETERMINE THIS?;
    flag_is_on = 0;  ** TURN FLAG OFF AGAIN;
  end;
  else do;
    communicate message password is invalid;
    ** NOTE THAT WE LEAVE THE FLAG TURNED ON HERE SO THAT NEXT TIME THE PROGRAM IS LAUNCHED THE FLAG WILL STILL BE ON AND THE PROGRAM WILL NOT RUN.;
  end; 
end;

乾杯 ロブ

于 2010-04-19T00:42:49.283 に答える