前のページ|次のページ

ENCRYPT=データセットオプション

出力SPD Engineデータセットを暗号化するかどうかを指定します。

該当要素: DATAステップおよびPROCステップ
デフォルト: NO
制限事項: 出力データセットにのみ使用
ENCRYPT=YESまたはENCRYPT=AESはCOMPRESS=と一緒には使用不可

構文

ENCRYPT= AES | NO | YES

構文説明

AES

AES (Advanced Encryption Standard)アルゴリズムを使用してデータセットを暗号化します。AESは、Base SASに含まれているSAS/SECUREソフトウェアを使用することで、より強力な暗号化を提供します。ENCRYPT=AESを使用する場合、ENCRYPTKEY=データセットオプションを指定する必要があります。詳細については、ENCRYPTKEY=データセットオプションを参照してください。

注意:
ENCRYPT=AESを指定する場合、すべてのENCRYPTKEY=キー値を記録しておく必要があります。
ENCRYPTKEY=キー値を忘れた場合、データは失われます。SASではENCRYPTKEY=キー値の回復をサポートできません。次のメッセージがSASログに書き込まれます。
Note: If you lose or forget the ENCRYPTKEY= key value, there will 
be no way to open the file or recover the data.

NO

データセットを暗号化しません。

YES

SAS Proprietaryアルゴリズムを使用してデータセットを暗号化します。この暗号化方法では、データセットに保存されたパスワードが使用されます。ENCRYPT=YESを指定した場合、少なくともREAD=またはPW=データセットオプションを同時に指定する必要があります。この暗号化方法ではパスワードが使用されるため、暗号化されたデータセット上のパスワードは、データセットを再作成せずに変更することはできません。

注意:
ENCRYPT=YESを指定する場合、すべてのパスワードを記録しておく必要があります。
パスワードを忘れた場合、SASの支援なしではリセットができません。このプロセスには、時間がかかり、リソースが集中的に使用されます。

詳細

SPD Engineでは、暗号化と圧縮は相互に排他的です。
SPD Engineデータセットを作成する際に暗号化と圧縮を両方とも行うことはできません。ENCRYPT=YESまたはENCRYPT=AESと、COMPRESS=データセットオプションまたはLIBNAMEオプションを同時に使用すると、次のエラーが発生します。
ERROR: The data set was not created because compression and
       encryption cannot both be specified. 
圧縮化され暗号化されたBase SASデータセットは、SPD Engineにコピーできません。
ENCRYPT=YESを使用する場合、次の規則が適用されます。
  • 暗号化データセットをコピーするには、出力エンジンで暗号化がサポートされている必要があります。サポートされていない場合、データセットはコピーされません。
  • データセットが暗号化される場合、関連するインデックスファイルおよびメタデータファイルもすべて暗号化されます。
  • 暗号化には、圧縮とおおよそ同じ量のCPUリソースが必要です。
  • PROC CPORTは、SAS Proprietaryで暗号化されたデータセットに対しては使用できません。
ENCRYPT=AESを使用する場合、次の規則が適用されます。
  • AES暗号化でデータセットを作成する場合は、ENCRYPTKEY=データセットオプションを使用する必要があります。
  • AESで暗号化されたデータセットをコピーするには、出力エンジンでAES暗号化がサポートされている必要があります。サポートされていない場合、データセットはコピーされません。
  • データセットが暗号化される場合、関連するインデックスファイルもすべて暗号化されます。
  • SAS 9.4より前のリリースでは、AESで暗号化されたデータセットは使用できません。
  • AES暗号化を利用する場合、Base SASに含まれているSAS/SECUREソフトウェアを使用します。
AESで暗号化されたデータセットではENCRYPTKEY=キー値を変更できません。これを変更するにはデータセットの再作成が必要となります。

例1: ENCRYPT=YESオプションの使用

次の例では、SAS Proprietaryアルゴリズムを使用しています。
libname depta spde 'SAS-library';
data salary(encrypt=yes read=green);
 input name $ yrsal bonuspct;
datalines;
Muriel    34567  3.2
Bjorn     74644  2.5
Freda     38755  4.1
Benny     29855  3.5
Agnetha   70998  4.1
;
このデータセットを使用するには、READパスワードを指定します。
proc contents data=salary(read=green);
run;

例2: ENCRYPT=AESオプションの使用

次の例ではENCRYPT=AESアルゴリズムを使用しています。
data salary(encrypt=aes encryptkey=green);
   input name $ yrsal bonuspct;
   datalines;
Muriel    34567  3.2
Bjorn     74644  2.5
Freda     38755  4.1
Benny     29855  3.5
Agnetha   70998  4.1
このデータセットを使用するには、ENCRYPTKEY=キー値を指定します。
proc contents data=salary(encryptkey=green);
run;

例3: AESで暗号化されたデータセットのコピー

次の2つの例では、ENCRYPTKEY=データセットオプションとCOPYプロシジャを使用しています。
PROC COPY IN=inlib OUT=outlib ENCRYPTKEY=secret;
    SELECT abc (ENCRYPTKEY=secreta) DEF(ENCRYPTKEY=secretb)…

PROC COPY IN=inlib OUT=outlib;
    SELECT abc (ENCRYPTKEY=secreta) DEF(ENCRYPTKEY=secretb)…

前のページ|次のページ|ページの先頭へ