ユーザーの STA へのアクセスを許可する前に、ユーザーを認証する必要があります。STA 内でローカルにユーザーを作成するか、外部のセキュリティサービスプロバイダ (SSP) を使用して STA へのアクセス制御を提供できます。
この付録では、WebLogic OpenLDAP (Lightweight Directory Access Protocol) および IBM RACF (Resource Access Control Facility) の STA アクセス制御用の使用方法について説明します。次のセクションがあります。
STA アプリケーションを使用してユーザーを作成するには、『STA ユーザーズガイド』を参照してください。
OpenLDAP を STA 用に構成するには、この手順を使用します。
STA のインストール中に選択した HTTP (STA 2.1.0 のデフォルトは 7019) または HTTPS (STA 2.1.0 のデフォルトは 7020) のポート番号を使用して、WebLogic コンソールのログイン画面に移動します。
https://yourHostName:PortNumber/console/
例:
https://sta_server:7020/console
STA のインストール中に定義した WebLogic 管理コンソールのユーザー名とパスワードを使用してログインします。
「Domain Structure」セクションで、「Security Realms」をクリックします。
「Realms」の表で、「myrealm」アクティブリンクを選択します (チェックボックスではなく、リンク自体を選択します)。
「Providers」タブをクリックします。
「チェンジ・センター」セクションで、「ロックして編集」をクリックします。
「Authentication Providers」セクションで、「New」をクリックします。
作成する認証プロバイダの名前 (たとえば、OpenLdapAuthenticator) を入力して、「Type」メニューで「OpenLDAPAuthenticator」を選択します。「OK」をクリックします。
「DefaultAuthenticator」アクティブリンクを選択します (チェックボックスではなく、リンク自体を選択します)。
「Control Flag」メニューで、「Sufficient」を選択し、「Save」をクリックします。
「Providers」ロケータリンクを選択して、「Authentication Providers」画面に戻ります。
「Authentication Providers」の表で、手順 8 で作成した OpenLDAP オーセンティケータ名を選択します (チェックボックスではなく、名前自体を選択します)。
「Control Flag」メニューで、「Sufficient」を選択し、「Save」をクリックします。
「Provider Specific」タブをクリックします。
サイトの要件に従って、画面のフィールドに入力します。次の例は、lses-ldap1 サーバーに適用され、各カスタマ環境固有のものです。
「Host」 = lses-ldap1
「Port」 = 389
「Principal」= 空白のまま
「Credential」= 空白のまま
「User Base DN」 = ou=people,o=STA,dc=oracle,dc=com
「User From Name Filter」 = (&(cn=%u)(objectclass=inetOrgPerson))
「User Object Class」 = inetOrgPerson
「Group Base DN」 = ou=groups,o=STA,dc=oracle,dc=com
「Group From Name Filter」 = (&(cn=%g)(objectclass=groupofnames))
「保存」をクリックします。
「チェンジ・センター」セクションで、「変更のアクティブ化」をクリックします。
次の手順を実行して構成をテストします。
WebLogic 管理コンソールからログアウトします。
STA コマンドを使用して STA を停止して再起動します。コマンドの使用方法の詳細は、『STA 管理ガイド』を参照してください。
# STA stop all # STA start all
WebLogic コンソールにログインします。
「Domain Structure」セクションで、「Security Realms」を選択します。
「Realms」の表で、「myrealm」アクティブリンクを選択します (チェックボックスではなく、リンク自体を選択します)。
「Users and Groups」タブをクリックします。
「Users」タブと「Groups」タブ内で、OpenLDAP プロバイダの「Provider」列にエントリが存在することを確認します。
IBM RACF (Resource Access Control Facility) 認証を STA 用に構成するには、次の手順を使用します。示された順に手順を実行する必要があります。
注:
STA では、CA の ACF‐2 や Top Secret など、IBM RACF との互換性があるサードパーティーの製品がサポートされます。インストールされているセキュリティー製品に適したコマンドを発行するかどうかは、STA をインストールするユーザーまたはセキュリティー管理者が決定します。STA の RACF サービスのメインフレーム側は、ELS 7.0 および 7.1 用の SMC コンポーネントの一部である CGI ルーチンによって提供されます。この CGI ルーチンは SMC HTTP サーバーによって呼び出され、FACILITY クラスで定義された RACF プロファイルを使用します。
STA が RACF をアクセス認証の手段として使用するためには、HTTP サーバーを実行する SMC 開始タスクをメインフレームで設定する必要があります。これを行う方法の詳細は、ELS ドキュメントの「SMC の構成と管理」にあります。
注:
SMC 開始タスクは、定義されている AT-TLS ルールと一致する必要があります。または、AT-TLS 定義で汎用ジョブ名 (たとえば、SMCW) を使用できます。値が指定された STC 識別子 (たとえば、JOBNAME.JOB) を使用する場合、これによって CGI ルーチンの接続が失敗します。
HTTP サーバーに使用するポート番号は、WebLogic Console で定義されているポート番号と一致する必要があり、ホストは、SMC タスクが実行されるホストの IP 名と一致する必要があります。
注:
既存の SMC は、RACF 承認が実行されるホスト上に存在する場合に使用できます。この場合、WebLogic 構成の実行時に既存の HTTP サーバーのポート番号を使用してください。AT-TLS は、アプリケーションサーバーとクライアントに対して透過的な TCP/IP アプリケーションの暗号化ソリューションです。パケットの暗号化および復号化は、z/OS TCPIP アドレス空間で TCP プロトコルレベルで行われます。RACF 承認のための AT‐TLS の要件は、『STA 要件ガイド』に記載されています。
次の RACF コマンドは、構成プロセスで定義するさまざまな RACF オブジェクトのステータスを一覧表示します。
RLIST STARTED PAGENT.* STDATA ALL
RLIST DIGTRING *ALL
RLIST FACILITY IRR.DIGTCERT.LISTRING ALL
RLIST FACILITY IRR.DIGCERT.LST ALL
RLIST FACILITY IRR.DIGCERT.GENCERT ALL
RACDCERT ID(stcuser) LIST
RACDCERT ID(stcuser) LISTRING(keyringname)
RACDCERT CERTAUTH LIST
AT-TLS を構成するには、次をします。
TCPIP プロファイルデータセットで次のパラメータを指定して、AT‐TLS をアクティブ化します。
TCPCONFIG TTLS
この文は、TCP OBEY ファイル内に配置してもかまいません。
ポリシーエージェントの構成 (PAGENT)
ポリシーエージェントアドレス空間は、暗号化される TCP/IP トラフィックを制御します。
PAGENT 開始タスク JCL を入力します。
例:
//PAGENT PROC //* //PAGENT EXEC PGM=PAGENT,REGION=0K,TIME=NOLIMIT, // PARM='POSIX(ON) ALL31(ON) ENVAR("_CEE_ENVFILE=DD:STDENV")/-d1' //* //STDENV DD DSN=pagentdataset,DISP=SHR//SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //* //CEEDUMP DD SYSOUT=*,DCB=(RECFM=FB,LRECL=132,BLKSIZE=132)
PAGENT 環境変数を入力します。pagentdataset データセットには、PAGENT 環境変数が含まれます。
例:
LIBPATH=/lib:/usr/lib:/usr/lpp/ldapclient/lib:. PAGENT_CONFIG_FILE=/etc/pagent.conf PAGENT_LOG_FILE=/tmp/pagent.log PAGENT_LOG_FILE_CONTROL=3000,2 _BPXK_SETIBMOPT_TRANSPORT=TCPIP TZ=MST7MDT
この例では、/etc/pagent.conf に PAGENT 構成パラメータが含まれています。TZ パラメータには独自のタイムゾーンを使用してください。
PAGENT を構成します。
例:
TTLSRule TBI-TO-ZOS { LocalAddr localtcpipaddress RemoteAddr remotetcpipaddress LocalPortRange localportrange RemotePortRange remoteportrange Jobname HTTPserverJobname Direction Inbound Priority 255 TTLSGroupActionRef gAct1~TBI_ICSF TTLSEnvironmentActionRef eAct1~TBI_ICSF TTLSConnectionActionRef cAct1~TBI_ICSF } TTLSGroupAction gAct1~TBI_ICSF { TTLSEnabled On Trace 2 } TTLSEnvironmentAction eAct1~TBI_ICSF { HandshakeRole Server EnvironmentUserInstance 0 TTLSKeyringParmsRef keyR~ZOS } TTLSConnectionAction cAct1~TBI_ICSF { HandshakeRole ServerWithClientAuth TTLSCipherParmsRef cipher1~AT-TLS__Gold TTLSConnectionAdvancedParmsRef cAdv1~TBI_ICSF CtraceClearText Off Trace 2 } TTLSConnectionAdvancedParms cAdv1~TBI_ICSF { ApplicationControlled Off HandshakeTimeout 10 ResetCipherTimer 0 CertificateLabel certificatelabel SecondaryMap Off } TTLSKeyringParms keyR~ZOS { Keyring keyringname } TTLSCipherParms cipher1~AT-TLS__Gold { V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA }
ここでは:
localtcpipaddress: HTTP サーバーのローカル TCP/IP アドレス
remotetcpipaddress: STA クライアントのリモート TCP/IP アドレス。これは、すべての TCP/IP アドレスで ALL にできます
localportrange: HTTP サーバーのローカルポート (HTTP または SMC の起動で指定されます)
remoteportrange: リモートポートの範囲 (すべてのエフェメラルポートで 1024-65535)
HTTPserverJobname: HTTP サーバーのジョブ名
certificatelabel: 認証定義からのラベル
keyringname: RACF 鍵リング定義からの名前
RACF クラスをアクティブ化します。RACF パネルまたは CLI のいずれかを使用できます。
RACF クラスには、次のものが含まれます。
DIGTCERT
DIGTNMAP
DIGTRING
PORTMAP および RXSERV が異常終了しないようにするには、SERVAUTH クラスを RACLIST する必要があります。
SETROPTS RACLIST(SERVAUTH) RDEFINE SERVAUTH **UACC(ALTER) OWNER (RACFADM) RDEFINE STARTED PAGENT*.* OWNER(RACFADM) STDATA(USER(TCPIP) GROUP(STCGROUP) RDEFINE FACILITY IRR.DIGTCERT.LISTRING UACC(NONE) OWNER(RACFADM) RDEFINE FACLITY IRR.DIGTCERT.LIST UACC(NONE) OWNER(RACFADM) RDEFINE FACILITY IRR.DIGTCERT.GENCERT UACC(NONE) OWNER (RACFADM)
RACF 鍵リングと証明書の定義
鍵リングと証明書を作成するには、次の RACF コマンドを入力します。
RACDCERT ID(stcuser) ADDRING(keyringname)
ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
keyringname: 鍵リングの名前で、PAGENT 構成で指定した鍵リングと一致する必要があります
RACDCERT ID(stcuser) GENCERT CERTAUTH SUBJECTSDN(CN('serverdomainname') O('companyname') OU('unitname') C('country')) WITHLABEL('calabel') TRUST SIZE(1024) KEYUSAGE(HANDSHAKE,DATAENCRYPT,CERTSIGN)
注:
これは、STA システムの CA 証明書です。ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
serverdomainname: z/OS サーバーのドメイン名 (たとえば、MVSA.COMPANY.COM)
companyname: 組織名
unitname: 組織単位名
country: 国
calabel: 認証局のラベル (たとえば、CATBISERVER)
RACDCERT ID(stcuser) GENCERT SUBJECTSDN(CN('serverdomainname') O('companyname') OU('unitname') C('country')) WITHLABEL('serverlabel') TRUST SIZE(1024) SIGNWITH(CERTAUTH LABEL('calabel'))
注:
これは、サーバー証明書です。ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
serverdomainname: z/OS サーバーのドメイン名 (たとえば、MVSA.COMPANY.COM)
companyname: 組織名
unitname: 組織単位名
country: 国
serverlabel: サーバー証明書のラベル (たとえば、TBISERVER)
calabel: CA 証明書定義で指定した認証局のラベル
RACDCERT ID(stcuser) GENCERT SUBJECTSDN(CN('clientdomainname') O('companyname') OU('unitname') C('country')) WITHLABEL('clientlabel') TRUST SIZE(1024) SIGNWITH(CERTAUTH LABEL('calabel'))
注:
これは、クライアント証明書です。ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
clientdomainname: STA クライアントのドメイン名 (たとえば、TBIA.COMPANY.COM)
companyname: 組織名
unitname: 組織単位名
country: 国
clientlabel: サーバー証明書のラベル – TBICLIENT
calabel: CA 証明書定義で指定した認証局のラベル。
PAGENT 構成で指定された鍵リングに CA、サーバー、およびクライアント証明書を接続します。
RACDCERT ID(stcuser) CONNECT(CERTAUTH LABEL('calabel') RING('keyringname') USAGE(CERTAUTH))
ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
calabel: CA 証明書定義で指定した認証局のラベル
keyringname: 鍵リングの名前で、PAGENT 構成で指定した鍵リングと一致する必要があります
RACDCERT ID(stcuser) CONNECT(ID(stcuser) LABEL('serverlabel') RING('keyingname') DEFAULT USEAGE(PERSONAL)
ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
serverlabel: サーバー証明書のラベル
keyringname: 鍵リングの名前で、PAGENT 構成で指定した鍵リングと一致する必要があります
RACDCERT ID(stcuser) CONNECT(ID(stcuser) LABEL('clientlabel') RING('keyingname') USEAGE(PERSONAL)
ここでは:
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
clientlabel: クライアント証明書のラベル
keyringname: 鍵リングの名前で、PAGENT 構成で指定した鍵リングと一致する必要があります
STA に送信される CA およびクライアント証明書をエクスポートします。
RACDCERT EXPORT (LABEL('calabel')) CERTAUTH DSN('datasetname') FORMAT(CERTB64)
ここでは:
calabel: CA 証明書定義で指定した認証局のラベル
datasetname: エクスポートされる証明書を受け取るデータセット
RACDCERT EXPORT (LABEL('clientlabel')) ID(stcuser) DSN('datasetname') FORMAT(PKCS12DER) PASSWORD(' password ')
ここでは:
clientlabel: クライアント証明書のラベル
stcuser: TCPIP アドレス領域に関連付けられた RACF ユーザー ID
datasetname: エクスポートされる証明書を受け取るデータセット
password: データ暗号化のパスワード。STA で証明書が受け取られるときに必要です。パスワードは、8 文字以上である必要があります。
これで、エクスポートされたデータセットは STA に転送され、FTP を使用できます。CA 証明書は、EBCDIC から ASCII に変換されて送信されます。CLIENT 証明書はバイナリファイルとして送信され、クライアント証明書とその秘密鍵の両方を含んでいます。
プロファイルは、FACILITY クラスで定義されます。最初のプロファイルは SMC.ACCESS.STA と呼ばれ、ユーザーが STA アプリケーションにアクセスできるかどうかを決定します。
STA へのアクセスを要求するユーザーは、このプロファイルに対する READ アクセス権を持っている必要があります。ほかのプロファイルはすべて、SMC.ROLE.nnn として表示され、ユーザーがログオン後に持つ役割を決定するために使用されます。
注:
STA に対して定義されている役割は StorageTapeAnalyticsUser のみです。この役割を取得するには、READ アクセス権を持つ SMC.ROLE.STORAGETAPEANALYTICSUSER プロファイルに追加するユーザー ID を要求する必要があります。公開鍵と秘密鍵が正常に生成されたことと、適切な権限を持つユーザー ID とパスワードが正しく定義されていることをテストするために、この手順が役に立つことがあります。
テストは、任意のブラウザを使用して行うことができますが、ここでは Firefox が例として使用されています。
Firefox の「ツール」メニューで、「オプション」を選択します。
「詳細」タブ、「証明書」タブの順に選択します。
「証明書を表示」をクリックします。
「証明書マネージャー」ダイアログボックスで「認証局証明書」タブをクリックして、インポートする証明書ファイルを選択します。
「インポート」をクリックします。
「あなたの証明書」タブを選択して、インポートする秘密鍵ファイルを入力します。
「インポート」をクリックします。
「OK」をクリックして、保存してダイアログボックスを閉じます。
CGI ルーチンをブラウザからテストするには、次の URL を入力します。host、port、userid、および password は適切な値に設定されています。
https://host:port/smcgsaf?type=authentication&userid=userid&password=password&roles=StorageTapeAnalyticsUser
結果として表示される出力は、ユーザーが STA および StorageTapeAnalyticsUser 役割へのアクセスを承認されているかどうかを示します。
注:
STA RACF 承認機能では、メインフレームユーザー ID のパスワードの変更はサポートされません。ユーザー ID のパスワードが期限切れになった場合、STA はこれを示します。STA へのログインを再試行する前に、通常のメインフレームチャネルからパスワードをリセットする必要があります。RACF セキュリティーサービスプロバイダ (または RACF SSP) は、プラグインとして WebLogic にインストールされている必要があります。
RACF SSP がインストールされている場合、STA インストーラは RACF SSP を WebLogic 内の適切な場所に配置するはずです。インストールされていない場合、次のようにディレクトリに RACF セキュリティー jar ファイルを配置してください。
/Oracle_storage_home/Middleware/wlserver_10.3/server/lib/mbeantypes/staRACF.jar
ここで Oracle_storage_home は、STA のインストール中に指定された Oracle ストレージホームの場所です。
必要な PTF を MVS システムにインストールします。これらの PTF により、STA へのログオン時に、RACF またはその他のサードパーティーのセキュリティーソフトウェアでの認証が可能になります。PTF 要件については、『STA 要件ガイド』を参照してください。
Application Transparent TLS (AT-TLS) は、SMC HTTP サーバーおよび WebLogic に対して定義されたポート番号がサーバーに暗号化されるように、MVS 上に構成されています。
続行する前に、MVS サーバー証明書 (ASCII 形式) と STA クライアント秘密鍵 (バイナリ PKCS12 形式) の 2 つのファイルを所有していることを確認してください。MVS システム管理者により、PKCS12 ファイルへのパスワードが提供されています。
証明書を /Oracle_storage_home/Middleware/user_projects/domains/tbi/cert に配置します。
ここで Oracle_storage_home は、STA のインストール中に指定された Oracle ストレージホームの場所です。
証明書を DER 形式から PEM 形式に変換します。
openssl pkcs12 -clcerts -in PKCS12DR.xxxxxx -out mycert.pem
インポートパスワード (証明書とともに提供されます)、新しい PEM パスワード、およびパスワードの確認を入力するよう求められます。
Java keytool コマンドを使用して、証明書ファイルを /Oracle_storage_home/Middleware/jdk1.6.0_xx/jre/lib/security/cacerts ファイルにインポートします。
# /Oracle_storage_home/Middleware/jdk1.6.0_xx/jre/bin/keytool -importcert -alias tbiServer -file certificate -keystore /Oracle/Middleware/jdk1.6.0_xx/jre/lib/security/cacerts -storetype jks
STA のインストール中に選択した HTTP (STA 2.1.0 のデフォルトは 7019) または HTTPS (STA 2.1.0 のデフォルトは 7020) のポート番号を使用して、WebLogic コンソールのログイン画面に移動します。
https://yourHostName:PortNumber/console/
例:
https://sta_server:7020/console/
STA のインストール中に定義した WebLogic 管理コンソールのユーザー名とパスワードを使用してログインします。
「Domain Structure」セクションで、「Security Realms」を選択します。
「Realms」のセクションで、「myrealm」アクティブリンクを選択します (チェックボックスではなく、名前自体を選択します)。
「Change Center」セクションで「Lock & Edit」をクリックします。
「Providers」タブを選択します。
「Authentication Providers」セクションで、「New」をクリックします。
追加する認証プロバイダの名前 (たとえば、STA RacfAuthenticator) を入力して、「Type」メニューの「RacfAuthenticator」を選択します。「OK」をクリックします。
注:
RACF jar ファイルが「Type」メニューに表示されるはずです。そうではない場合、STA コマンドを使用して STA を停止して再起動します。コマンドの使用方法の詳細は、『STA 管理ガイド』を参照してください。RACF プロバイダが「Authentication Providers」表に含められたことを確認します。DefaultAuthenticator および DefaultIdentityAsserter が常にリストの最初の 2 つのプロバイダでなければなりません。
「DefaultAuthenticator」アクティブリンクを選択します (チェックボックスではなく、名前自体を選択します)。
「Control Flag」メニューで、「Sufficient」を選択し、「Save」をクリックします。
「Provider Specific」タブをクリックして、「Save」をクリックします。
「Providers」ロケータリンクをクリックして、「Authentication Providers」画面に戻ります。
「Authentication Providers」の表で、手順 8 で作成した RACF オーセンティケータ名を選択します (チェックボックスではなく、名前自体を選択します)。
「Control Flag」メニューで、「Sufficient」を選択し、「Save」をクリックします。
「Provider Specific」タブをクリックします。
MVS システムが実行されているホスト名 (たとえば、mvshost.yourcompany.com) とポート番号 (たとえば、8700) を入力して、「Save」をクリックします。
「チェンジ・センター」セクションで、「変更のアクティブ化」をクリックします。
WebLogic 管理コンソールからログアウトします。
STA コマンドを使用して STA を停止して再起動します。コマンドの使用方法の詳細は、『STA 管理ガイド』を参照してください。
# STA stop all # STA start all