SAPに接続するためのHTTPSの設定
HTTPS経由でSAPに接続し、SAPテーブルソースの読み取りを行うには、Secure AgentマシンとSAPシステムにOpenSSL証明書が必要です。
Secure AgentマシンでOpenSSL証明書を作成します。次に、作成した証明書をPSE形式でSAPシステムトラストストアにインポートします。
SAPテーブル接続でHTTPSを有効にするには、トランザクションコードSAP ICMモニタ(SMICM)からSAPシステム内のキーストアファイルの生成キーストアパスワードとシークレットキーパスワードを指定する必要もあります。
OpenSSL証明書の作成
OpenSSL証明書を作成する前に、前提条件のタスクを実行する必要があります。
- •Secure AgentマシンにOpenSSLをダウンロードしてインストールします。
- • Secure AgentとSAPシステムをホストするマシンのオペレーティングシステムに基づき、SAPGENPSE暗号化ツールの最新パッチをSAP Service Marketplaceからダウンロードします。
デフォルトでは、SAPGENPSEファイルはnt-x86_64ディレクトリに抽出されます。
- •SAPパラメータicm/server_port、ssl/ssl_lib、sec/libsapsecu、ssf/ssfapi_lib、ssf/name、icm/HTTPS/verify_client、ssl/client_pse、wdisp/ssl_encryptを設定します。
詳細については、SAPのマニュアルを参照してください。
OpenSSLを使用して自己署名証明書を作成するには、次のタスクを実行します。
- 1コマンドラインから、OPENSSL_CONF変数にopenssl.cfgファイルへの絶対パスを設定します。
例えば、コマンドset OPENSSL_CONF= C:\OpenSSL-Win64\bin\openssl.cfgを実行します。
- 2<openSSL installation directory>\binディレクトリに移動します。
- 32048ビットのRSAプライベートキーを生成するには、次のコマンドを実行します:
openssl.exe req -new -newkey rsa:2048 -sha1 -keyout <RSAkey File_Name>.key -out <RSAkey File_Name>.csr
- 4プロンプトが表示されたら、次の値を入力します。
- - プライベートキーのパスワード(PEMパスフレーズ)。秘密鍵の暗号化に使用するフレーズを入力します。確認のためにパスワードを再入力します。
重要: このPEMパスワードを書き留めます。自己署名キーとPKCS#12証明書の作成時に、このパスワードを指定する必要があります。
- - 国名の2文字のコード。
- - 都道府県または州の名前。
- - 市区町村名。
- - 組織名。
- - 組織単位名。
- - 共通名(CN)。必須。
重要: Secure Agentをホストするマシンの完全修飾ホスト名を入力します。
- - 電子メールアドレス。
- 5必要に応じて、証明書要求とともに渡す次の属性を入力します。
- - チャレンジパスワード。
- - 会社名(省略可能)。
2048ビットのRSAプライベートキーが作成されます。指定したディレクトリに<RSAkey File_Name>.keyと<RSAkey File_Name>.csrファイルが生成されます。
- 6RSAプライベートキーを使用して自己署名キーを生成するには、次のコマンドを実行します:
openssl x509 -req -days 11499 -in <RSAkey File_Name>.csr -signkey <RSAkey File_Name>.key –out <Certificate File_Name>.crt
- 7プロンプトが表示されたら、RSAプライベートキーのPEMパスフレーズを入力します。
指定したディレクトリに<Certificate File_Name>.crtファイルが生成されます。
- 8<Certificate File_Name>.crtファイルと<RSAkey File_Name>.keyファイルの内容を.pemファイルに連結するには、次のタスクを実行します。
- aテキストエディタで<Certificate File_Name>.crtファイルと<RSAkey File_Name>.keyファイルを開きます。
- bファイルを作成して<PEM File_Name>.pemという名前で保存します。
- c<Certificate File_Name>.crtファイルのコンテンツをコピーし、.pemファイルに貼り付けます。
- d<RSAKey_Name>.keyファイルのコンテンツをコピーし、.pemファイルの既存のコンテンツに追加します。
- e<PEM file name>.pemファイルを保存します。
- 9PKCS#12証明書を作成するには、コマンドラインから次のコマンドを実行します:
openssl pkcs12 -export -in <PEM File_Name>.pem -out <P12 File_Name>.p12 –name “domain name”
- 10プロンプトが表示されたら、次の詳細を入力します。
指定した場所に<P12 File_Name>.p12ファイルが生成されます。
- 11Javaキーストアファイルを作成するには、次のコマンドを入力します。
keytool -v -importkeystore -srckeystore <P12 File_Name>.p12 -srcstoretype PKCS12 -destkeystore <JKS File_Name>.jks -deststoretype JKS -srcalias "source alias" –destalias "destination alias"
- 12プロンプトが表示されたら、次の詳細を入力します。
指定したディレクトリに<JKS File_Name>.jksファイルが生成されます。
SAPテーブル接続でHTTPSを有効にするときに、このキーストアファイルの名前と場所を指定します。また、[キーストアのパスワード]としてターゲットキーストアパスワード、[プライベートキーのパスワード]としてソースキーストアパスワードを指定する必要があります。
OpenSSL証明書からPSE形式への変換
OpenSSL証明書を作成した後に、SAPGENPSEツールを使用してOpenSSL証明書をPSE形式に変換する必要があります。
- 1コマンドラインから、<SAPGENPSE抽出ディレクトリ>ディレクトリに移動します。
- 2PSEファイルを生成するには、次のコマンドを実行します:
sapgenpse import_p12 -p <PSE_Directory>\<PSE File_Name>.pse <P12 Certificate_Directory>\<P12 File_Name>.p12
- 3プロンプトが表示されたら、次の詳細を入力します。
- - P12ファイルのパスワード。P12ファイルのエクスポートパスワードを入力します。
- - PSEファイルを保護するための個人識別番号(PIN)。確認のためにPINを再入力します。
指定したディレクトリに<PSE File_Name>.pseファイルが生成されます。
- 4PSE形式に基づいて証明書を生成するには、次のコマンドを実行します:
sapgenpse export_own_cert -p <PSE File_Directory>\<PSE File_Name>.pse -o <Certificate_Name>.crt
- 5プロンプトが表示されたら、PSE PIN番号を入力します。
指定した場所に<Certificate_Name>.crtファイルが生成されます。この証明書ファイルをSAPシステムのトラストストアにインポートします。
SAPシステムでのHTTPSサービスの有効化
SAPシステムに接続するようにHTTPSを設定するには、SAPシステムのトランザクションコードSAP ICMモニタ(SMICM)からHTTPSサービスを有効にする必要があります
SAPシステムでHTTPSサービスを有効にする方法の詳細については、SAPのマニュアルを参照してください。
SAPシステムのトラストストアへの証明書のインポート
HTTPS経由でSAPに接続するには、証明書をPSE形式でSAPシステムのトラストストアにインポートする必要があります。
- 1SAPにログインし、STRUSTトランザクションに移動します。
- 2[SSLクライアント(標準)]を選択し、パスワードを指定します。
[証明書のインポート]ダイアログで、証明書ファイル形式としてBase64形式を選択する必要があります。
- 3[インポート]アイコンをクリックし、PSE形式の<Certificate_Name>.crtを選択します。
注: ユーザーが別のSAPネットワークに存在する場合は、SAPアプリケーションサーバー上のエージェントホストのDNSエントリを追加する必要があります。
- 4[証明書リストに追加]をクリックします。
- 5インターネット通信マネージャ(ICM)を再起動します。