2020年4月6日月曜日

LOCKDOWNで指定できるディレクトリを制限

セキュリティに関心のある人向けの投稿です。サーバクライアントの構成で、フォルダのアクセス制限をする方法を調べていたら、ありました。だいぶ昔、2014年の記事 ”Fencing in your SAS users with LOCKDOWN” なので、長いこと気が付いていなかった。

悪意あるユーザが、コードタスクでディレクトリのパスを探索すると、他の人、他の部署に見せたくないものが見えてしまう可能性があります。これを防止する手段が、LOCKDOWN システムオプションです。設定の方法は、前述の記事を参照してください。許可されていないディレクトリにLIBNAMEを割り当てようとすると、どのようなエラーが起きるか示します。

Workspaceサーバのディレクトリにある設定ファイルをいじって、LOCKDOWNのオプションと許可するパスを設定します。

3つのパターンでLIBNAMEを割り当てます。1つ目が、許可されていないディレクトリ、2つ目が許可したディレクトリ、3つ目が許可されていないディレクトリのサブディレクトリです。

 これを実行すると、1つ目がエラーになります。検索に引っ掛かるようにエラーメッセージをタイプしておきます。この投稿を書いている時点では、日本語のエラーメッセージはヒットしません。ERROR: SAS がロックダウン状態の場合、パスc:\tempはアクセス可能なパスのリストに含まれません。

このLOCKDOWNオプションで物理パスの指定を守り、アクセス権をより強固に縛るには、Metadata-Bound Libraries を使えとのことです。これを実運用で使っているところを知らないけど、単に私が無知なだけなのか?同僚に聞いてみよう。

2 件のコメント :

  1. ちなみに、DOPENで許可されていないディレクトリを開こうとすると、期待通りにERRORになります。

    返信削除
    返信
    1. FILEステートメントで、許可されていないディレクトリにデータセットの中味を書こうとしても、期待通りにERRORになります。

      削除