WorkatoでClient Certification Authenticationを使用してSAP S/4HANA Cloudに接続する方法

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

SAP S/4HANA CloudインスタンスのODataサービスを設定するには、次の手順を実行します。

1

SAP API Business Hub explorerで、自動化要件に合ったOData APIを見つけます。

SAP API explorerSAP API explorer

2

適切なAPIが見つかったら、クリックして開き、Communication Scenario IDを見つけます。 後で使用するために、このIDを保存します。

API Communication ScenarioAPI詳細通信

3

CA署名付きx509証明書を準備します。 この証明書は、S/4HANA Cloudバックエンドシステムが認識しているCAによって署名されている必要があります。 既知のCAは、S/4HANA CloudシステムのCertificate Trust Listを確認することで検証できます。 詳細については、このSAP Blog記事を参照するか、証明書を作成する簡単な方法としてSAP Passportを使用する方法に関する次のガイドを確認してください。

4

Setting up Communication Managementの手順に従って、次の必須タスクを完了します:

  • Communication Userを作成: 手順3で作成した証明書を使用してCommunication Userを作成します。
  • Communication Systemを作成: Communication Userに関連付け、認証方法をSSL Client Certificateに設定します。
  • Communication Arrangementを作成: Communication SystemとユーザーをCommunication Scenarioに関連付けます。
5

Workatoに戻り、コネクションフィールドに入力します。

サンプルガイド: SAP Passportを使用してS/4HANA CloudのClient Certificate認証用の証明書を作成する

CA署名付きx509証明書を準備するには、信頼されたCAによって署名された証明書が必要です。 SAP Passportを使用すると、SAPのCloud Root CAによって署名されたx509証明書を迅速かつ簡単に生成できます。 このガイドでは、この方法で接続を実現する手順を説明します。 ただし、プロダクションで使用する証明書は、SAPを含む可能性のある組織が優先または既存で使用しているベンダーに従う必要があります。

1

SAP passportを申請します。

2

証明書の.pfxファイルをダウンロードします。

3

OpenSSLを使用して.pfxファイルを.pem形式に変換します。 ローカルマシンにOpenSSLをダウンロードしておく必要があります。

  • 次のコマンドopenssl pkcs12 -in input-cert.pfx -out output-cert.pem -legacyを使用して不透明なパスワードを作成し、後で使用するために保存できます。 このコマンドにより、PEMパスフレーズの入力を求められます。
4

任意のプレーンテキストエディターで.pemファイルを開き、内容を確認します。 構造は次の例のようになります:

Bag Attributes
    localKeyID: 01 00 00 00
    friendlyName: SXXXXXXXXXX
Key Attributes: <No Attributes>
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w
...<redacted>...
jTG6eYRIAnHR2+4Vto+QxA==
-----END ENCRYPTED PRIVATE KEY-----
Bag Attributes
    localKeyID: 01 00 00 00
    friendlyName: S0023610052
subject=C = DE, O = SAP Trust Community, OU = SAP Service Marketplace, CN = SXXXXXXXXXX
issuer=C = DE, O = SAP Trust Community, CN = SAP Passport CA G2
-----BEGIN CERTIFICATE-----
MIIDjzCCAnegAwIBAgINY3nCYsU77LIAABBWgj
...<redacted>...
NSo4ezWlQtb/44Swg0NFaLpwmn
-----END CERTIFICATE-----
Bag Attributes: <No Attributes>
subject=C = DE, O = SAP Trust Community, CN = SAP Passport CA G2
issuer=C = DE, L = Walldorf, O = SAP SE, CN = SAP Cloud Root CA
-----BEGIN CERTIFICATE-----
MIIFLzCCAxegAwIBAddfzANBgkqhkiG9w0BAQsF
...<redacted>...
hmZooggAg+fCd5ZE4NgC7bAdwj/QYjPmXsolDjABgYUxtGQ=
-----END CERTIFICATE-----
Bag Attributes: <No Attributes>
subject=C = DE, L = Walldorf, O = SAP SE, CN = SAP Cloud Root CA
issuer=C = DE, L = Walldorf, O = SAP SE, CN = SAP Cloud Root CA
-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIQGHcPvmUGa79M6pM42bGdfdsfasdf
...<redacted>...
LvHPhNDM3rMsLu06agF4JTbO8ANYtWQTx0PVrZKJu+8fcIaUp
-----END CERTIFICATE-----
5

前述のファイルから新しい.pemファイルを作成し、communication_user.pemとして保存します。 この.pemファイルには、秘密鍵を含めずに証明書のみを含める必要があります。 前述の例に基づくと、新しい.pemファイルは次の例のようになります:

-----BEGIN CERTIFICATE-----
MIIDjzCCAnegAwIBAgINY3nCYsU77LIAABBWgj
...<redacted>...
NSo4ezWlQtb/44Swg0NFaLpwmn
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFLzCCAxegAwIBAddfzANBgkqhkiG9w0BAQsF
...<redacted>...
hmZooggAg+fCd5ZE4NgC7bAdwj/QYjPmXsolDjABgYUxtGQ=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIQGHcPvmUGa79M6pM42bGdfdsfasdf
...<redacted>...
LvHPhNDM3rMsLu06agF4JTbO8ANYtWQTx0PVrZKJu+8fcIaUp
-----END CERTIFICATE-----
6

Communication Userを作成する際に、証明書セクションでcommunication_user.pemファイルをアップロードします。

API Communication Scenario証明書のアップロード

7

通常どおり、SAP S/4HANA CloudインスタンスでCommunication SystemおよびCommunication Arrangementの残りの設定を行います。 Communication SystemのInbound communicationの認証方法がSSL Client Certificateに設定されていることを確認します。

API Communication Scenario証明書Communication System

8

Workatoに戻り、次のコネクションフィールドに入力します:

  • 認証タイプ - Client certificate(x509)
  • クライアント証明書 - これは手順4の.pemファイル内の最初の証明書です。 前述の例に基づくと、次の出力のようになります:
-----BEGIN CERTIFICATE-----
MIIDjzCCAnegAwIBAgINY3nCYsU77LIAABBWgj
...<redacted>...
NSo4ezWlQtb/44Swg0NFaLpwmn
-----END CERTIFICATE-----
  • 秘密鍵 - これは手順4の.pemファイル内の秘密鍵です 前述の例に基づくと、次の出力のようになります:
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w
...<redacted>...
jTG6eYRIAnHR2+4Vto+QxA==
-----END ENCRYPTED PRIVATE KEY-----
  • パスフレーズ - これは手順3で作成したプライベートPEMパスフレーズです。
  • CA証明書 - これには手順4の.pemファイル内の残り2つの証明書を含める必要があります。 チェーンであるため、両方の証明書の間に空行を入れて含める必要があります。
-----BEGIN CERTIFICATE-----
MIIFLzCCAxegAwIBAddfzANBgkqhkiG9w0BAQsF
...<redacted>...
hmZooggAg+fCd5ZE4NgC7bAdwj/QYjPmXsolDjABgYUxtGQ=
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIQGHcPvmUGa79M6pM42bGdfdsfasdf
...<redacted>...
LvHPhNDM3rMsLu06agF4JTbO8ANYtWQTx0PVrZKJu+8fcIaUp
-----END CERTIFICATE-----
  • Host、Service、SAP Client - 必須フィールドに入力します。 必須フィールドは、SAPインスタンスの詳細によって異なります。

コネクションフィールド

コネクションの確立を完了するには、Workatoで次のフィールドに入力します:

ODATAバージョン

V2 APIとV4 APIには専用のコネクションを作成することをお勧めします。

フィールド説明
コネクション名他のレシピで再利用できるように、このコネクションにわかりやすい名前を付けます。
コネクションタイプSAPインスタンスが直接コネクションを許可しないネットワークで実行されている場合は、オンプレミスエージェントを選択します。 接続を試みる前に、有効なオンプレミスエージェントがあることを確認してください。 詳細については、オンプレミス接続ガイドを参照してください。 認証タイプとしてClient certificate (x509)を使用する場合は、オプションCloudを選択する必要があります。 Cloudが選択されている場合、リクエストはWorkatoのサーバーから直接送信されます。
認証タイプBasicまたはClient certificate(x509)のいずれかを選択します。
ODataバージョンこのコネクションで使用する予定のAPIのODataバージョンを選択します: v2またはv4
ユーザー名認証タイプがBasicの場合に適用されます。 前述の手順で作成したCommunication Userのユーザー名です。
パスワード認証タイプがBasicの場合に適用されます。 前述の手順で作成したCommunication Userのパスワードです。
クライアント証明書認証タイプがClient certificate(x509)の場合に適用されます。 前述の手順で作成したCommunication Userのユーザー名です。
秘密鍵認証タイプがClient certificate(x509)の場合に適用されます。 クライアント証明書の秘密鍵です。
パスフレーズ認証タイプがClient certificate(x509)の場合に適用されます。 秘密鍵のパスフレーズです。該当する場合。
CA証明書認証タイプがClient certificate(x509)の場合に適用されます。 カスタムCAを使用してx509証明書に署名した場合は、ここにCAの証明書を追加する必要があります。 チェーン内に複数の証明書がある場合は、各証明書の間に空行を入れます。
ホストSAP ODataサービスへのベースパスです。 SAP S/4HANA Cloudの場合、これはCommunication Arrangement URLにあります。
たとえば、サービスURLがhttps://www.myS4HanaSystem.com/sap/opu/odata/sap/API_PURCHASEORDER_PROCESS_SRVの場合、ホストはhttps://www.myS4HanaSystem.com/sap/opu/odata/sap/です。
サービス認証をテストするために使用できるサンプルサービスです。 これは、最初に設定したサービスにすることができます。 SAP S/4HANA Cloudの場合、サービス名はCommunication Arrangementにあります。
SAPクライアント参照するSAPクライアントです。 たとえば、https://www.myS4HanaSystem.com/sap/opu/odata/sap/API_PURCHASEORDER_PROCESS_SRV?sap-client=800​がサービスURLの場合、sapクライアントは800です。

Last updated: