このドキュメントでは、Compute Engine VM インスタンス、オンプレミス、別のクラウド プロバイダ、または Google Cloud以外の別の環境にある SAP ホストシステムに、オンプレミスまたはクラウド エディションの ABAP SDK for Google Cloud をインストールして構成する方法について説明します。
このドキュメントは、SAP 管理者、 Google Cloud 管理者、その他の SAP および Google Cloud セキュリティ プロフェッショナルを対象としています。
概要
ABAP SDK for Google Cloud には、デベロッパーが ABAP を使用して Google Cloud API にプログラムでアクセスするためのクライアント ライブラリが用意されています。これらのクライアント ライブラリは、重要な関数を再利用可能なコンポーネントとしてカプセル化することで、デベロッパーが記述する必要があるコードの量を削減します。ABAP SDK for Google Cloud が提供するクライアント ライブラリの完全なリストについては、ABAP SDK for Google Cloud クライアント ライブラリをご覧ください。
ABAP デベロッパーは、Vertex AI、Document AI Warehouse、BigQuery、Dataproc、Pub/Sub、Google Workspace APIs、Google Maps Platform など、さまざまな Google Cloudサービスを使用して ML や AI を活用したソリューションを構築し、デプロイできます。
ABAP SDK for Google Cloud は、SAP と Google Cloud API 間の通信に HTTPS プロトコルと TLS / SSL を使用します。
ソリューションとアクセラレータ
ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションには、次のソリューションとアクセラレータが用意されています。
Vertex AI SDK for ABAP: Google Cloudの Vertex AI プラットフォームを操作できるようにします。Vertex AI SDK for ABAP については、Vertex AI SDK for ABAP の概要をご覧ください。
BigQuery AI and ML SDK for ABAP: ABAP アプリケーションと ABAP ベースの AI エージェントで BigQuery の AI と ML の機能を使用できます。この SDK は、ABAP 環境から次の機能を提供します。
- Gemini を使用して、BigQuery で企業データを分析します。
- BigQuery で企業データのエンベディングを生成して管理し、BigQuery を低コストのベクトル データベースにします。
- BigQuery で企業データに対してベクトル検索を実行して類似性検索を行うか、モデルを RAG します。
詳細については、BigQuery AI and ML SDK for ABAP の概要をご覧ください。
BigQuery Toolkit for SAP: SAP Landscape Transformation Replication Server を使用せずに、SAP テーブルから BigQuery にデータをプログラムでレプリケートできます。詳細については、BigQuery Toolkit for SAP の概要をご覧ください。
Business Eventing Toolkit for SAP: イベント ドリブン アーキテクチャを介して SAP を Google Cloudや他のビジネス システムと統合できます。その際に必要となる構成は最小限の構成です。イベントの標準化を確実に行うため、このツールキットには、SAP イベントを業界標準の CloudEvents 仕様にエンコードできる組み込みモジュールが用意されています。これらの標準化されたイベントは、Pub/Sub、Cloud Run functions、Firebase Cloud Messaging(FCM)、Integration Connectors などのGoogle Cloud サービスの事前構築済みターゲットに公開できます。詳細については、Business Eventing Toolkit for SAP をご覧ください。
SAP のコンテンツ リポジトリとしての Cloud Storage: SAP のコンテンツ リポジトリとして Cloud Storage を実装できます。Cloud Storage は、PDF や画像などのさまざまなファイル形式の保存や、ビジネスデータのアーカイブなど、SAP 関連のデータ ストレージのニーズに対応できます。詳細については、Cloud Storage を SAP のコンテンツ リポジトリとして実装するをご覧ください。
始める前に
ABAP SDK for Google Cloud をインストールする前に、次のことを行います。
Google Cloudを初めて利用する場合は、https://cloud.google.com でアカウントを作成します。
まだ Google Cloud プロジェクトがない場合は、プロジェクトを作成します。
プロジェクトで課金が有効になっていることを確認します。詳しくは、プロジェクトの課金ステータスを確認するをご覧ください。
使用している SAP ソフトウェア バージョンが ABAP SDK for Google Cloud でサポートされていることを確認します。詳細については、SAP ソフトウェア バージョンの要件をご覧ください。
SAP ソフトウェア バージョンの要件
ABAP SDK for Google Cloud は、SAP_BASIS 702 以降の SAP NetWeaver で実行される SAP システムにインストールできます。これには、次のような SAP システムが含まれます。
- SAP ERP 6.0(ECC)
- S/4HANA 1909 以降
- SAP Business Warehouse(BW)
- SAP Landscape Transformation Replication Server(SLT)
- SAP Customer Activity Repository(CAR)
SAP UI アドオン
ABAP SDK for Google Cloud は、SAP ユーザー インターフェース(UI)アドオンを使用して ABAP データを JSON 形式にシリアル化します。
/UI2/CL_JSON
クラスに最新の修正が実装されていることを確認します。/UI2/CL_JSON
クラス属性 version
は、バージョン 12 以降である必要があります。詳細については、SAP Note 2798102 - /UI2/CL_JSON corrections - PL12 をご覧ください。
/UI2/CL_JSON
クラス属性を確認するには、次の操作を行います。
- SAP GUI で、トランザクション コード
SE24
を実行します。 - クラス名として
/UI2/CL_JSON
を入力します。 以下を確認してください。
/UI2/CL_JSON
クラス属性は、SAP システムで使用可能である必要があります。- クラス属性
version
は、バージョン 12 以降である必要があります。
SAP UI アドオンは、SAP NetWeaver バージョンと互換性がある必要があります。
ソフトウェア コンポーネントのバージョンを確認するには、次の操作を行います。
- SAP GUI でメニューバーに移動します。
[System] > [Status] を選択します。
SAP システムのステータスに、SAP システムにインストールされているソフトウェア コンポーネントのバージョンが表示されます。
次の表に、SAP ソフトウェア コンポーネントに必要な最小バージョンを示します。
SAP ソフトウェア コンポーネント リリース 最小サポートパック UI_700 200 SAPK-20016INUI700
SAP_UI 750 SAPK-75017INSAPUI
SAP_UI 750 SAPK-75016INSAPUI
SAP_UI 752 SAPK-75209INSAPUI
SAP_UI 753 SAPK-75306INSAPUI
SAP_UI 754 SAPK-75402INSAPUI
SAP UI アドオンの互換性については、以下をご覧ください。
Google Cloudとのネットワーク接続を確立する
SAP ワークロードが Google Cloudで実行されていない場合は、ユーザーまたはネットワーク管理者が、 Google Cloudと高帯域幅かつ低レイテンシの安全な接続を確立する必要があります。
Google Cloud API には、公共のインターネット経由でアクセスできます。詳細については、Cloud APIs についてをご覧ください。SAP サーバーが公共のインターネットにアクセスできない場合は、次のいずれかの方法で Google Cloud に接続します。
接続を構成するには、該当する Google Cloud ネットワーク接続プロダクトで指定されている手順に沿って操作してください。各プロダクトでシナリオごとに手順が異なるため、ドキュメントを確認し、シナリオに応じた手順に沿って操作してください。
SAP ワークロードが Google Cloudで実行されている場合、ABAP SDK for Google Cloud は基盤となる VPC ネットワークを使用します。
ABAP SDK for Google Cloud をインストールする
ABAP SDK for Google Cloud は、トランスポート ファイルの形式で提供されます。ABAP SDK for Google Cloud をインストールするには、SDK トランスポート ファイルを SAP NetWeaver にインポートする必要があります。
ABAP SDK for Google Cloud のトランスポート ファイルを SAP 環境にインポートする際に、SAP によるトランスポート審査やインポート キューの管理などの問題が発生した場合は、Cloud カスタマーケアにお問い合わせください。カスタマーケアへのお問い合わせ方法については、 Google Cloudでの SAP に関するサポートを利用するをご覧ください。
トランスポート ファイルを SAP システムにインポートするときに、「Requests do not match the component version
of the target system
」というエラー メッセージが表示されることがあります。この問題を解決するには、トランスポート ファイルを再インポートします。再インポートするときに、[Import Transport Request] 画面の [Options] タブで [Ignore Invalid Component Version] チェックボックスをオンにします。
ABAP SDK for Google Cloud がすでにインストールされていて、最新バージョンの SDK に更新する必要がある場合は、ABAP SDK for Google Cloud を更新するをご覧ください。
ダウンロード ポータルから、トランスポート ファイルを含むインストール パッケージをダウンロードします。
ABAP SDK for Google Cloud トランスポート ファイルを SAP サーバー トランスポート インポート ディレクトリにコピーします。
ABAP SDK for Google Cloud のコア機能を利用できるようにするには、次のトランスポート ファイルをコピーする必要があります。
/usr/sap/trans/cofiles/K900453.GM1
/usr/sap/trans/data/R900453.GM1
これらのトランスポート ファイルには、クライアント ライブラリ クラス、ソリューションとアクセラレータ、トークン、API キー、Workload Identity 連携の認証クラスが含まれています。
OAuth 2.0 クライアント認証情報で認証するには、次のトランスポート ファイルをコピーします。
/usr/sap/trans/cofiles/K900455.GM1
/usr/sap/trans/data/R900455.GM1
これらのトランスポート ファイルは、OAuth 2.0 クライアント認証情報ベースの認証以外の追加機能を提供しません。OAuth 2.0 クライアント認証情報ベースの認証の場合は、まず ABAP SDK for Google Cloud のコア機能のトランスポート ファイルをインポートしてから、OAuth 2.0 クライアント認証情報のトランスポート ファイルをインポートします。
OAuth 2.0 クライアント認証情報を使用するには、ご使用の SAP システムが OAuth 2.0 に対応している必要があります。OAuth 2.0 をサポートする SAP システムについては、SAP Note 3041322 - OAuth 2.0 Client: 権限付与タイプのクライアント認証情報のダウンポートをご覧ください。
トランスポート ファイルを SAP システムにインポートするには、SAP GUI でトランザクション コード
STMS_IMPORT
またはSTMS
を使用します。/GOOG/ABAP_SDK
パッケージのすべてのオブジェクトがアクティブで、整合性のある状態にします。- SAP GUI で、トランザクション コード
SE80
を入力します。 - パッケージ セレクタで、
/GOOG/ABAP_SDK
を選択します。 - [オブジェクト名] フィールドでパッケージ
/GOOG/ABAP_SDK
を右クリックし、[チェック] > [パッケージ チェック] > [パッケージ オブジェクト(サブパッケージを含む)] を選択します。 リスト表示に切り替え アイコンをクリックします。
[パッケージ チェックの結果] 列の緑色のチェックは、すべてのオブジェクトがパッケージ チェックに合格したことを示します。
- SAP GUI で、トランザクション コード
SAP のセキュリティ設定を構成する
ABAP SDK for Google Cloud を Google Cloud APIs に安全に接続するには、次の操作を行います。
TLS/SSL 証明書を設定する
必要な Google 証明書をダウンロードして STRUST
にインポートします。
Google サービスに接続する場合は、Google Trust Services のアドバイスに沿って対応してください。少なくとも、Google Trust Services リポジトリからすべてのルート CA 証明書をダウンロードする必要があります。
最新の信頼できるルート CA 証明書を使用していることを確認するため、システムのルート証明書ストアを 6 か月ごとに更新することをおすすめします。新しいルート CA 証明書と削除されたルート CA 証明書は、Google Trust Services で発表されます。自動通知を受け取るには、Google Trust Services で RSS フィードを登録してください。
PEM
とDER
は、一般的に使用されている証明書形式です。証明書は、SAP システムと互換性のある形式でダウンロードできます。必要な形式が使用できない場合は、必要な形式への証明書の変換について SAP ノート 2755238 - How to convert a certificate into the appropriate format with OpenSSL を参照します。SAP GUI で、トランザクション コード
STRUST
を入力します。変更モードに切り替えます。
[SSL クライアント SSL クライアント(標準)] をダブルクリックします。
[証明書] > [インポート] をクリックし、Google Trust Services リポジトリからダウンロードした証明書をインポートします。
緑色のチェックマークが付いているボタンをクリックします。
[編集] > [証明書リストに追加] をクリックします。右下のパネルの [証明書] 領域に証明書の情報が表示されていることを確認します。
エントリを保存します。
STRUST
への証明書のインポートに関する SAP による詳細情報については、SAP Note 3238733 - 証明書を NetWeaver AS ABAP の STRUST PSE の証明書リストにインポートする方法をご覧ください。
Internet Communication Manager(ICM)で HTTP ポートと HTTPS ポートを検証する
Google Cloudでホストされている SAP システムの場合、VM メタデータは HTTP ポートを介してのみアクセスできるメタデータ サーバーに保存されます。認証には HTTP ポートのアクティブ化が必要です。したがって、SAP システムが Compute Engine VM インスタンスでホストされている場合、VM メタデータにアクセスして認証を有効にするには、HTTP ポートがアクティブであることを確認する必要があります。また、後続の API 呼び出しで HTTPS ポートがアクティブであることも確認する必要があります。
SAP システムが Google Cloudの外部にホストされている場合、HTTP ポートのアクティブ化は必要ありません。
HTTP ポートと HTTPS ポートを検証するには、次の操作を行います。
- SAP GUI で、トランザクション コード
SMICM
を入力します。 - メニューバーで、[Goto] > [Services] をクリックします。 [Actv] 列の緑色のチェックマークは、HTTP ポートと HTTPS ポートが有効になっていることを示します。
HTTP ポートと HTTPS ポートの構成については、ICM の HTTP(S) 設定をご覧ください。
アウトバウンド(下り / 外向き)ネットワークを確保する
SAP アプリケーション サーバーは、HTTPS 経由で Google CloudAPIs に接続する必要があります。
- SAP ホストシステムで、ファイアウォール ルールとプロキシによって、Compute Engine VM インスタンス外部のサーバーからの HTTPS 接続が許可されていることを確認します。詳しくは、VM インスタンスの作成と開始をご覧ください。
- Google CloudAPIs に到達するためのアクセスが、ネットワークの観点から制限されていないことを確認します。
Google Cloud APIs へのアクセスにプロキシ サーバーを使用している場合は、次のものをプロキシの許可リストに追加します。
*.googleapis.com
*.gserviceaccount.com
認可を管理する
ABAP SDK for Google Cloud 固有のトランザクションにアクセスするには、SDK 認可オブジェクトへのアクセス権をユーザーに付与する必要があります。SDK トランスポート ファイルには、SDK 認可オブジェクト ZGOOG_SDK
と認可グループ ZSGC
が含まれています。
SDK トランザクションへのアクセス権を付与するには、次の操作を行います。
- SAP GUI で、トランザクション コード
PFCG
を入力します。 - SDK のロールを定義します。
- 認可オブジェクト
ZGOOG_SDK
について、認可Activity 16
に対するアクセス権をロールに付与します。
SDK 構成テーブルへのアクセスを制限するには、次の操作を行います。
- SAP GUI で、トランザクション コード
PFCG
を入力します。 - SDK 構成テーブルへのアクセスを制限するためのロールを定義します。
- 認可オブジェクト
S_TABU_DIS
へのアクセスを制限するには、認可グループZSGC
を除外します。
Google Cloud セキュリティを設定する
SAP システムが Google Cloudでホストされている場合は、ホストの Compute Engine VM インスタンスで次の構成を行います。
ホスト VM インスタンスの IAM サービス アカウントを作成します。手順については、サービス アカウントを作成するをご覧ください。
サービス アカウントに
Service Account Token Creator
ロールを付与します。手順については、単一ロールの付与をご覧ください。サービス アカウントを VM インスタンスに接続します。また、VM のアクセス スコープを
cloud-platform
に設定して、VM のサービス アカウントに付与する IAM ロールによって VM の IAM 権限が完全に決定されるようにします。手順については、VM を作成してサービス アカウントを接続するをご覧ください。Google Cloud APIs にアクセスするための専用の IAM サービス アカウントを作成します。手順については、サービス アカウントを作成するをご覧ください。
API 機能にアクセスするために必要な IAM ロールをサービス アカウントに付与します。 Google Cloud API のロールの要件については、該当する API ドキュメントをご覧ください。また、最小権限の原則に従ってください。API 固有の事前定義ロールの詳細については、IAM の基本ロールと事前定義ロールのリファレンスをご覧ください。
認証を設定する
Google Cloud APIs を使用するには、認証によって本人確認を行う必要があります。認証オプションと設定手順については、認証をご覧ください。 Google Cloud
認証の設定が完了したら、クイックスタートの使用を開始してサンプル プログラムを作成できます。
ABAP SDK for Google Cloud を構成する
このセクションでは、ABAP SDK for Google Cloud の構成について説明します。
Google Cloud エンドポイントを指定する
ABAP SDK for Google Cloud には、API クライアント ライブラリ クラスを使用して Google Cloud API を呼び出すときに API エンドポイントを指定する次のオプションが用意されています。
デフォルトのエンドポイント
デフォルトでは、API クライアント ライブラリ クラスのコンストラクタ メソッドには、サポートされている Google Cloud APIs の HTTP エンドポイントが含まれています。クライアント ライブラリは、メソッドが呼び出されて API リソースに関するオペレーションを実行する際に、これらのエンドポイントを使用します。
エンドポイントに RFC 宛先を使用する
次のいずれかの機能を利用する必要がある場合は、RFC 宛先を使用して Google Cloudへの接続を確立します。
- SAP 環境でプロキシ サーバーを使用しており、同じプロキシ サーバーを使用して Google Cloudに HTTP リクエストを送信する必要がある場合。
- SDK が VPC ネットワーク内の Private Service Connect エンドポイントを介して Google Cloud APIs にアクセスするように設定する必要がある場合。
- HTTP 圧縮を使用する必要がある場合。
- リージョン固有の API のエンドポイントにアクセスする必要がある場合。
ABAP SDK for Google Cloud のトランスポート ファイルには、 Google Cloud API エンドポイントの次のサンプル RFC 宛先が含まれています。
サンプル RFC 宛先の名前 | 注 |
---|---|
GOOG_IAMCREDENTIALS |
この RFC 宛先は、IAM API をターゲットとしています。 |
GOOG_OAUTH2_TOKEN |
この RFC 宛先は、トークンベースの認証用の Google Cloud エンドポイントをターゲットとしています。 |
GOOG_PUBSUB_V1 |
この RFC 宛先は、Pub/Sub API をターゲットとしています。 |
GOOG_TRANSLATION_EU_V3 |
この RFC 宛先は、Cloud Translation v3 API をターゲットとしています。 |
RFC 宛先を作成するには、次の操作を行います。
SAP GUI で、トランザクション コード
SM59
を入力します。サンプルの RFC 宛先をコピーして、新しい RFC 宛先を作成します。
作成した RFC 宛先で接続タイプが
G - HTTP connection to external server
に設定されていることを確認します。[Technical Settings] タブに移動して、次の詳細情報を入力します。
- ターゲット ホスト: Google Cloud API のホスト名を入力します。たとえば、
translation.googleapis.com
を使用できます。 - パスの接頭辞: リソースパスを入力します。たとえば、
/language/translate/
を使用できます。 サービス番号: 「
443
」と入力します。安全な通信に使用されるポート番号です。RFC 宛先の作成に必要な Google Cloud API 固有の詳細情報を収集するには、RFC 宛先の作成に関する詳細情報を収集するをご覧ください。
- ターゲット ホスト: Google Cloud API のホスト名を入力します。たとえば、
[ログオンとセキュリティ] タブに移動し、[SSL 証明書] フィールドで [デフォルトの SSL クライアント(標準)] のオプションが設定されていることを確認します。
必要に応じて、プロキシを構成し、HTTP 圧縮を有効にして、Private Service Connect エンドポイントを指定します。
変更を保存します。
RFC 宛先を使用して Google Cloud APIs に接続するには、サービス マッピング テーブルに RFC 宛先を構成して、RFC 宛先をクライアント キーにマッピングする必要があります。サービス マッピング テーブルの詳細については、テーブル /GOOG/SERVIC_MAP
をご覧ください。
詳細情報を収集して RFC 宛先を作成する
RFC 宛先の作成に必要な詳細情報を取得するには、次の操作を行います。
-
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。 - [ABAP SDK for Google Cloud] > [Utilities] > [Get RFC Settings for Google Cloud Services] をクリックします。
- Google Cloud サービス名を指定します。
- [Execute] をクリックして詳細情報を表示します。
プロキシを構成する
RFC 宛先を使用して Google Cloudに接続する場合は、SAP 環境で使用しているプロキシ サーバーを介して SDK から通信を転送できます。
プロキシ サーバーを使用しない場合や、SAP 環境にプロキシ サーバーがない場合は、この手順をスキップできます。
プロキシ サーバーの設定を構成するには、次の操作を行います。
SAP GUI で、トランザクション コード
SM59
を入力します。必要な API をターゲットとする RFC 宛先を選択します。
[Technical Settings] タブに移動して、[HTTP Proxy Options] セクションのフィールドに値を入力します。
SDK を使用してアクセスする API ごとに、プロキシ サーバー設定を構成する必要があります。
HTTP 圧縮を有効にする
RFC 宛先を使用して Google Cloudに接続する場合は、HTTP 圧縮を有効にできます。
SAP システムがGoogle Cloudで実行されていない場合は、HTTP 圧縮を有効にすることをおすすめします。HTTP 圧縮により圧縮と解凍のオーバーヘッドが発生する可能性があるため、本番環境で HTTP 圧縮を有効にする前に、環境の設定に基づいてメリットをテストおよび比較してください。SAP の詳細については、SAP Note 1037677 - HTTP compression compresses certain documents only をご覧ください。
この機能を有効にしない場合は、この手順をスキップできます。
HTTP 圧縮を有効にするには、次の操作を行います。
SAP GUI で、トランザクション コード
SM59
を入力します。必要な API をターゲットとする RFC 宛先を選択します。
[Special Options] タブに移動します。
[HTTP Version] フィールドで [HTTP 1.1] を選択します。
[Compression] フィールドで、適切な値を選択します。
Private Service Connect エンドポイントを指定する
ABAP SDK for Google Cloud で Private Service Connect エンドポイントを使用して、 Google Cloud APIs と IAM のプライベート使用を許可する場合は、 Google Cloud プロジェクトでこれらのエンドポイントを作成し、それぞれの RFC 宛先で指定する必要があります。
SDK で引き続きデフォルトのパブリック API エンドポイントを使用して Google Cloud APIs と IAM に接続する場合は、この手順をスキップします。
Private Service Connect エンドポイントを使用するように SDK を構成するには、次の手順に沿って操作します。
SAP GUI で、トランザクション コード
SM59
を入力します。必要な Google Cloud APIs と IAM に新しい RFC 宛先が作成されていることを確認します。これらの RFC 宛先の作成方法については、RFC 宛先の構成をご覧ください。
特定の Google Cloud API をターゲットとする RFC 宛先を選択し、次の手順を完了します。
[Technical Settings] タブに移動します。
[Target Host] フィールドに、IAM にアクセスするために作成した Private Service Connect エンドポイントの名前を入力します。
[Service No.] フィールドに値
443
が指定されていることを確認します。[Logon and Security] タブに移動します。
[SSL Certificate] フィールドで、[DFAULT SSL Client (Standard)] オプションが選択されていることを確認します。
IAM をターゲットとする RFC 宛先を選択し、次の手順を完了します。
[Technical Settings] タブに移動します。
[Target Host] フィールドに、IAM にアクセスするために作成した Private Service Connect エンドポイントの名前を入力します。
[Service No.] フィールドに値
443
が指定されていることを確認します。[Logon and Security] タブに移動します。
[SSL Certificate] フィールドで、[DFAULT SSL Client (Standard)] オプションが選択されていることを確認します。
ABAP SDK for Google Cloud を使用して、使用する予定の IAM API とその他の API のサービス マッピング テーブルを構成します。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings] > [Configure Service Map] をクリックします。
[New Entries] をクリックします。
IAM API と他の API の RFC 宛先を指定します(例:
Cloud Pub/Sub API v1
)。
項目 | 説明 |
---|---|
Google Cloud キー名 | クライアント キー構成の名前を指定します。 |
Google サービス名 | RFC 宛先をマッピングする Google Cloud サービスを指定します。 |
RFC 宛先 | RFC 宛先の名前を指定します。 |
サービス マッピング テーブルで指定した RFC 宛先は、クライアント ライブラリ クラスがインスタンス化され、ABAP ソースコードで Google Cloud API を呼び出すために使用されるときに SDK によって使用されます。
アプリケーション ロギング
アプリケーション ログを書き込むために、ABAP SDK for Google Cloud には埋め込みロギング フレームワークが付属しています。ログ オブジェクト ZGOOG
とサブオブジェクト ZABAP_SDK
には、ログ構成のデフォルト オブジェクトとして使用できる SDK トランスポート ファイルが付属しています。独自のカスタムのログ オブジェクトとログ サブオブジェクトを SDK ロギング フレームワークに追加することもできます。
標準の SAP アプリケーション ログを表示するには、トランザクション SLG1
を使用します。詳細については、Logging をご覧ください。
SDK に付属のログ オブジェクトとログ サブオブジェクトを使用してロギングを構成する
SDK に付属のログ オブジェクト ZGOOG
とサブオブジェクト ZABAP_SDK
をログ構成のデフォルト オブジェクトとして使用できます。
ロギングを構成するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [基本設定] > [ロギング フレームワークを構成] をクリックします。
[New Entries] をクリックします。
次のフィールドに値を入力します。
フィールド 説明 オブジェクト 「 ZGOOG
」と入力します。サブオブジェクト 「 ZABAP_SDK
」と入力します。ログレベル 最小ログレベルを指定します。サポートされている値は次の通りです。
I
: 情報、警告、エラーW
: 警告とエラーE
: エラーのみ
ほとんどのログメッセージがログに記録されるように、ログレベルを
I
に設定することをおすすめします。保持 ログを保持する日数を指定します。 終了時点 このログ構成を有効な状態に保持する期間の終了日を指定します。デフォルトの終了日は 9999/12/31
です。デフォルト このログ構成をデフォルトとして設定するには、チェックボックスをオンにします。
カスタムログ オブジェクトを追加する
独自のカスタムのログ オブジェクトとログ サブオブジェクトを SDK ロギング フレームワークに追加することもできます。
カスタムのログ オブジェクトとログ サブオブジェクトを追加するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings ] > [Configure Logging Framework] をクリックします。
[New Entries] をクリックします。
次のフィールドに値を入力します。
フィールド 説明 オブジェクト ログ オブジェクトの名前を入力します。 サブオブジェクト ログ サブオブジェクトの名前を入力します。 ログレベル 最小ログレベルを指定します。使用できる値は次のとおりです。
I
: 情報、警告、エラーW
: 警告とエラーE
: エラーのみ
ほとんどのログメッセージがログに記録されるように、ログレベルを
I
に設定することをおすすめします。保持 ログを保持する日数を指定します。 終了時点 このログ構成を有効な状態に保持する期間の終了日。デフォルトの終了日は 9999/12/31
です。デフォルト これがデフォルトのログ構成であるかどうかを指定します。
カスタムのログ オブジェクトとログ サブオブジェクトをデフォルトのロギング構成として設定する必要がある場合は、現在のデフォルト エントリのデフォルト フィールドを消去して、デフォルトとして作成する新しいエントリのデフォルト フィールドを選択します。
任意の時点でデフォルトのエントリとして保持できるログ構成は 1 つのみです。
カスタムのログ オブジェクトとログ サブオブジェクトは、デフォルトに設定せずに使用することもできます。そのためには、ロギング フレームワークでカスタムのログ オブジェクトとログ サブオブジェクトを作成したら、API クライアント スタブをインスタンス化する際に、ログ オブジェクトとログ サブオブジェクトを渡す必要があります。詳細については、Logging をご覧ください。
ログ構成が不要になった場合は無効にできます。
ログ構成を無効にするには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings ] > [Configure Logging Framework] をクリックします。
[終了時点] フィールドに過去の日付を設定します。
ABAP SDK for Google Cloud の主な構成テーブル
テーブル /GOOG/CLIENT_KEY
認証と接続に関連する構成の場合、ABAP SDK for Google Cloud ではテーブル /GOOG/CLIENT_KEY
が使用されます。テーブル /GOOG/CLIENT_KEY
で、認証方法に固有の詳細情報を使用してクライアント キーを構成します。認証方法と関連するクライアント キーの構成の詳細については、認証をご覧ください。
テーブル /GOOG/CLIENT_KEY
を表示するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings] > [Configure Client Key] をクリックします。
次の表に、クライアント キーテーブルのフィールドを示します。
項目 | データ型 | 長さ | 説明 |
---|---|---|---|
Google Cloud キー名 | CHAR | 20 | クライアント キー構成の名前。例: CLIENT_KEY_API_KEY |
Google Cloud サービス アカウント名 | CHAR | 255 | サービス アカウントの名前(メールアドレス形式)。 |
Google Cloud のスコープ | CHAR | 255 | API アクセス スコープ https://www.googleapis.com/auth/cloud-platform 。このアクセス スコープは、ホスト VM 上のすべての Cloud APIs への完全アクセス権を許可する設定に対応しています。 |
プロジェクト ID | CHAR | 255 | ターゲット API を含む Google Cloud プロジェクトの ID。 |
コマンド名 | CHAR | 18 | OS コマンド名。通常、このフィールドは空白のままにします。 |
認可クラス | CHAR | 30 | Google Cloudとの通信に使用する認可クラス。 |
トークンのキャッシュ保存 | CHAR | 1 | Google Cloud から取得したアクセス トークンをキャッシュに保存するかどうかを決めるフラグ。 Google Cloudへの接続を構成してテストしたら、トークンのキャッシュ保存を有効にすることをおすすめします。トークンのキャッシュ保存の詳細については、トークンのキャッシュ保存を有効にするをご覧ください。 |
トークンの更新期限(秒) | INT4 | 10 | アクセス トークンの有効期限が切れ、更新が必要になるまでの時間(秒)。1 から 3599 の値を指定すると、デフォルトの有効期限の 3500 秒がオーバーライドされます。0 を指定すると、SDK はデフォルト値を使用します。デフォルト値は 3500 です。 |
認可パラメータ 1 | CHAR | 255 | これは、特定の状況で構成を必要とする追加の認可パラメータです。通常、このフィールドは空白のままにします。 |
認可パラメータ 2 | CHAR | 255 | これは、特定の状況で構成を必要とする追加の認可パラメータです。通常、このフィールドは空白のままにします。 |
テーブル /GOOG/SERVIC_MAP
サービス構成を RFC 宛先にマッピングするために、ABAP SDK for Google Cloud ではテーブル /GOOG/SERVIC_MAP
を使用します。
認証方法に応じて、この表には必須のエントリと推奨エントリが記載されます。
テーブル /GOOG/SERVIC_MAP
を表示するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings] > [Configure Service Mapping] をクリックします。
次の表に、サービス マッピング テーブルのフィールドを示します。
項目 | データ型 | 長さ | 説明 |
---|---|---|---|
Google Cloud キー名 | CHAR | 20 | クライアント キー構成の名前。 |
Google サービス名 | CHAR | 255 | Google Cloud サービスの名前。サービスを見つけるには、検索ヘルプを使用します。 |
RFC 宛先 | CHAR | 32 | RFC 宛先の名前。関連する RFC 宛先を見つけるには、検索ヘルプを使用します。 |
ヘルプを検索する
フィールドで使用可能な値を確認するには、次のスクリーンショットに示すアイコンをクリックします。
テーブル /GOOG/LOG_CONFIG
アプリケーション ログの書き込みには、ABAP SDK for Google Cloud でテーブル /GOOG/LOG_CONFIG
が使用されます。
テーブル /GOOG/LOG_CONFIG
を表示するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings ] > [Configure Logging Framework] をクリックします。
次の表に、ロギング構成テーブルのフィールドを示します。
項目 | 説明 |
---|---|
オブジェクト | ログ オブジェクトの名前。 |
サブオブジェクト | ログ サブオブジェクトの名前。 |
ログレベル | 最小ログレベルが表示されます。使用できる値は次のとおりです。
|
保持 | ログを保持する日数。 保持期間が経過した後、トランザクション |
終了時点 | このログ構成を有効な状態に保持する期間の終了日。デフォルトの終了日は 9999/12/31 です。 |
デフォルト | これがデフォルトのログ構成であるかどうかを示します。 |
変更者 | ログ構成を変更したユーザー名。 |
次の日付の変更 | ログ構成が変更された日付。 |
変更時点 | ログ構成が変更された時刻。 |
トークンのキャッシュ保存
大量の API メソッド呼び出しが短期間に実行される大量の呼び出しのユースケースで SDK を使用している場合は、クライアント キー構成で取得されたアクセス トークンまたは API キーのキャッシュを有効にして、 Google CloudAPIs にアクセスします。
トークンのキャッシュ保存を有効にすると、アクセス トークンまたは API キーは期限切れになるか取り消されるまで再利用されます。これにより、新しいアクセス トークンまたは API キーを取得するために実行される HTTP 呼び出しの回数が低減されます。
トークンのキャッシュ保存を有効にするには、クライアント キーテーブルで [トークンのキャッシュ保存] フラグを選択します。
トークンのキャッシュ保存を有効にすると、アクセス トークンは、クライアント キーテーブルの [トークンの更新期限(秒)] フィールドで設定されている期間、アプリケーション サーバーの共有メモリにキャッシュ保存されます。トークンの更新期限(秒) が指定されていないか 0 に設定されている場合、アクセス トークンは、詳細設定の CMD_SECS_DEFLT
パラメータに指定されている期間、キャッシュに保存されます。
キャッシュに保存されたアクセス トークンを消去する
トークンのキャッシュ保存が有効であり、関連する API へのアクセスに ABAP SDK for Google Cloud が使用するサービス アカウントに割り当てられたロールを更新すると、キャッシュに保存されたトークンの有効期限が切れた後にのみ、更新されたロールに対応する新しいアクセス トークンが取得されます。このような場合は、アクセス トークンを手動で消去できます。
キャッシュに保存されたアクセス トークンを消去するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Utilities] > [Clear Cache] をクリックします。
必要に応じてオプションを選択します。
- 共有メモリ領域を消去: キャッシュ全体を消去します。
- メモリからインスタンスを消去: 特定のインスタンスのキャッシュに保存されているアクセス トークンを消去します。このオプションでは、インスタンス名も指定します。
レポートを実行します。
Google Cloud API の IAM ロールを確認する
最小権限の原則を実装するには、ABAP プログラムで使用するGoogle Cloud APIs に適した IAM ロールを知ることが不可欠です。必要なロールのみを付与することで、サービス アカウントのアクセスを制限できます。SDK に統合された Role Finder ユーティリティを使用すると、さまざまな Google Cloud APIs に関連付けられている IAM ロールを簡単に特定できます。
IAM ロールを確認するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Utilities] > [Fetch API Relevant Roles] をクリックします。
または、トランザクション コード
/GOOG/ROLE_FINDER
を実行して、Role Finder ユーティリティにアクセスすることもできます。[Client key] フィールドに、テーブル
/GOOG/CLIENT_KEY
で構成された有効なクライアント キー名を入力します。[Google Service Name] フィールドに、IAM ロールを確認する必要がある Google Cloud API を指定します。
必要に応じて、IAM ロール内の関連する IAM 権限を表示するには、[Full Details] フィールドを選択します。
[Execute] をクリックします。IAM ロールが表示されます。
詳細設定
必要に応じて、/GOOG/SDK_PARAM
テーブルの SDK の詳細設定パラメータを変更できます。これらのパラメータ値はシステムレベルで適用され、すべての SDK コンポーネントに共通です。
SDK はこれらのパラメータにデフォルト値を内部的に適用します。詳細設定は、デフォルト値をオーバーライドする場合にのみ使用します。
詳細設定パラメータの変更は、包括的な分析を行ってから、新しい値が SDK のパフォーマンスに及ぼす影響を確認したうえでのみ行うことをおすすめします。新しい詳細設定によって発生した障害やパフォーマンスの問題は、ユーザー側の責任で対処する必要があります。
詳細設定パラメータを変更するには、次の操作を行います。
SAP GUI で、トランザクション コード
/GOOG/SDK_IMG
を実行します。または、トランザクション コード
SPRO
を実行して、[SAP Reference IMG] をクリックします。[ABAP SDK for Google Cloud] > [Basic Settings] > [Configure Parameters] をクリックします。
[New Entries] をクリックします。
表示された行で、次の設定を指定します。
- [Parameter Name] フィールドに、パラメータの名前を入力します。パラメータの説明は自動的に入力されます。
- [Parameter Value] フィールドに値を入力します。
詳細設定パラメータの詳細については、詳細設定パラメータをご覧ください。
新しいエントリを保存します。
詳細設定パラメータ
次の表に、ABAP SDK for Google Cloud の詳細設定パラメータを示します。
パラメータ名 | 説明 | デフォルト値 | 有効な値 |
---|---|---|---|
CMD_SECS_DEFLT |
トークンのキャッシュ保存を有効にした場合に、キャッシュ内のトークンが期限切れになるまでの秒数。 | 3500 | 値は 1~3599 にする必要があります。 |
ABAP SDK for Google Cloud を更新する
Google Cloud は、トランスポート ファイルとして ABAP SDK for Google Cloud の新しいリリースを提供します。ABAP SDK for Google Cloud を更新するには、SDK トランスポート ファイルを SAP NetWeaver にインポートする必要があります。
ABAP SDK for Google Cloud のトランスポート ファイルを SAP 環境にインポートする際に、SAP によるトランスポート審査やインポート キューの管理などで問題が発生した場合は、Cloud カスタマーケアにお問い合わせください。カスタマーケアへのお問い合わせ方法については、 Google Cloudでの SAP に関するサポートを利用するをご覧ください。
ABAP SDK for Google Cloud を更新するには、次の操作を行います。
SAP 環境で、次の操作を行います。
- ABAP SDK for Google Cloud の既存の API クライアント スタブを使用するバックグラウンド ジョブを停止します。
- BigQuery Toolkit for SAP コンポーネントを使用するアプリケーションを停止します。たとえば、BigQuery Toolkit for SAP を使用するバッチジョブを実行している場合は、ジョブを停止します。
ダウンロード ポータルから、トランスポート ファイルを含むインストール パッケージをダウンロードします。
次の SDK トランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。
バージョン
1
、1.5
、1.6
から最新バージョンに SDK を更新する場合は、次のトランスポート ファイルをコピーします。/usr/sap/trans/cofiles/K900451.GM1
/usr/sap/trans/data/R900451.GM1
これらのトランスポート ファイルは、ABAP SDK for Google Cloud の非推奨の機能に関連するアーティファクトを削除します。追加機能、拡張機能、非推奨機能については、ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションの最新情報をご覧ください。
SDK をバージョン
1.7
以降から最新バージョンに更新する場合は、これらのトランスポート ファイルのコピーをスキップできます。
ABAP SDK for Google Cloud のコア機能を利用できるようにするには、次のトランスポート ファイルをコピーする必要があります。
/usr/sap/trans/cofiles/K900453.GM1
/usr/sap/trans/data/R900453.GM1
これらのトランスポート ファイルには、クライアント ライブラリ クラス、ソリューションとアクセラレータ、トークン、API キー、Workload Identity 連携の認証クラスが含まれています。
OAuth 2.0 クライアント認証情報で認証するには、次のトランスポート ファイルをコピーします。
/usr/sap/trans/cofiles/K900455.GM1
/usr/sap/trans/data/R900455.GM1
これらのトランスポート ファイルは、OAuth 2.0 クライアント認証情報ベースの認証以外の追加機能を提供しません。OAuth 2.0 クライアント認証情報ベースの認証の場合は、まず ABAP SDK for Google Cloud のコア機能のトランスポート ファイルをインポートしてから、OAuth 2.0 クライアント認証情報のトランスポート ファイルをインポートします。
OAuth 2.0 クライアント認証情報を使用するには、ご使用の SAP システムが OAuth 2.0 に対応している必要があります。OAuth 2.0 をサポートする SAP システムについては、SAP Note 3041322 - OAuth 2.0 Client: 権限付与タイプのクライアント認証情報のダウンポートをご覧ください。
トランスポート ファイルを SAP システムにインポートするには、SAP GUI でトランザクション コード
STMS_IMPORT
またはSTMS
を使用します。インポートとオブジェクトの有効化が成功したことを確認したら、バックグラウンド ジョブを再開します。
使用状況の指標
ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションは、Google Cloud のプライバシーに関するお知らせ(Google が収集するサービスデータ)を遵守して、使用状況の指標を収集し、サポート目的で Google に送信します。これらの使用状況の指標は、ABAP SDK for Google Cloud から Google Cloud API が呼び出されるたびに収集されます。
この SDK は、次の使用状況の指標を収集します。
- 認証方法: Google Cloud サービスの呼び出しに使用される認証方法に関する情報。
- ABAP SDK バージョン: ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションのバージョン番号。
- SAP_ABA リリース: SAP_ABA ソフトウェア コンポーネントのバージョン。
- モジュール ID(Vertex AI SDK for ABAP でのみ収集): SDK 内で使用されているモジュールまたは機能の名前(ベクトル検索など)。
ライセンス
ABAP SDK for Google Cloud オンレミス エディションまたはクラウド エディションは、 Google Cloud Platform の利用規定に基づき、「ソフトウェア」として提供されます。これには、サービス固有の規約(https://cloud.google.com/terms/service-terms)が含まれます。前述の利用規約の一般性を制限することなく、Google からの明示的な書面による許可なく、ABAP SDK for Google Cloud を変更または配布することはできません。
ABAP SDK for Google Cloud ソフトウェアは無料でご利用いただけます。明確さを期するため記載しますが、Cloud Translation API や Pub/Sub API など、 Google Cloud Platform の使用を規定する契約に基づいて他の「ソフトウェア」および「サービス」を使用すると、費用が発生する可能性があります。
ABAP SDK for Google Cloud には SAP ソフトウェアのライセンスは含まれていません。SAP ソフトウェアの適切なライセンスを別途入手してください。
言語サポート
ABAP SDK for Google Cloud は、英語(EN
)のみをサポートしています。
SDK は、中国語(CH
)、フランス語(FR
)、ドイツ語(DE
)、日本語(JA
)、ポルトガル語(PT
)、ロシア語(RU
)の SAP ログオン言語の場合は、デフォルトで英語(EN
)です。
SDK の使用時に発生する可能性のあるエラー メッセージは、現在のシステム言語を問わず英語で生成されます。
サポート ライフサイクル
Google Cloud は、ABAP SDK for Google Cloud の現在のメジャー バージョンを「 Google Cloudでの SAP のリリースノート ページ」において、前のメジャー バージョンの非推奨化のお知らせが公開されてから少なくとも 12 か月間、サポートし維持します。
サポートを利用する
ABAP SDK for Google Cloud の問題を解決するには、次の操作を行います。
Cloud フォーラムのコミュニティで ABAP SDK for Google Cloud について質問し、ディスカッションに参加します。
入手可能なすべての診断情報を収集し、Cloud カスタマーケアにお問い合わせください。カスタマーケアへのお問い合わせ方法については、 Google Cloudでの SAP に関するサポートを利用するをご覧ください。