このドキュメントでは、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 APIs にプログラムでアクセスするためのクライアント ライブラリが用意されています。これらのクライアント ライブラリは、重要な関数を再利用可能なコンポーネントとしてカプセル化することで、デベロッパーが記述する必要があるコードの量を削減します。ABAP SDK for Google Cloud が提供するクライアント ライブラリの完全なリストについては、ABAP SDK for Google Cloud クライアント ライブラリをご覧ください。
ABAP デベロッパーは、Vertex AI、Document AI Warehouse、BigQuery、Dataproc、Pub/Sub、Google Workspace API、Google Maps Platform など、さまざまな Google Cloud サービスを使用して ML や AI を活用したソリューションを構築し、デプロイできます。
バージョン 1.8 以降、ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションには、Google Cloud の Vertex AI プラットフォームとシームレスにやり取りするための専用ツールである Vertex AI SDK for ABAP が用意されています。Vertex AI SDK for ABAP の詳細については、Vertex AI SDK for ABAP の概要をご覧ください。
SAP と Google Cloud APIs 間の通信に、ABAP SDK for Google Cloud は HTTPS プロトコルと SSL を使用します。
始める前に
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 ユーザー インターフェース(UI)アドオンを使用して ABAP データを JSON 形式にシリアル化します。/UI2/CL_JSON
クラスに最新の修正が実装されていることを確認します。
次の表に、SDK のインストールに必要なコンポーネントの最小バージョンを示します。
SAP | SAP NetWeaver | SAP UI アドオン |
---|---|---|
SAP ERP 6.0(ECC) | SAP_BASIS 702 以降 |
/UI2/CL_JSON: PL12 以降。 詳細については、SAP Note 22798102 - /UI2/CL_JSONCorrects - PL12 をご覧ください。 SAP UI アドオンは、SAP NetWeaver バージョンと互換性がある必要があります。SAP UI アドオンの互換性については、以下をご覧ください。 |
S/4HANA 1909 以降 | SAP_BASIS 752 以降 |
Google Cloud へのネットワーク接続を確立する
SAP ワークロードが Google Cloud で実行されていない場合は、ユーザーまたはネットワーク管理者が、Google Cloud に対する安全で高帯域幅、かつ低レイテンシの接続を確立する必要があります。
公共のインターネット経由で Google Cloud APIs にアクセスできます。詳細については、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 は、SAP NetWeaver にインストールするトランスポート ファイルの形式で提供されます。
ABAP SDK for Google Cloud がすでにインストールされていて、最新バージョンの SDK に更新する必要がある場合は、ABAP SDK for Google Cloud を更新するをご覧ください。
ダウンロード ポータルから、トランスポート ファイルを含むインストール パッケージをダウンロードします。
ABAP SDK for Google Cloud トランスポート ファイルを SAP サーバー トランスポート インポート ディレクトリにコピーします。
ABAP SDK for Google Cloud には、トランスポート ファイルのセットが 2 つ用意されています。
サポートされている Google Cloud API との接続を確立し、トークンまたは API キーで認証するには、次のトランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。
/usr/sap/trans/cofiles/K900319.GM1
/usr/sap/trans/data/R900319.GM1
OAuth 2.0 クライアント認証情報で認証する場合は、次のトランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。
/usr/sap/trans/cofiles/K900321.GM1
/usr/sap/trans/data/R900321.GM1
これらのトランスポート ファイルは、OAuth 2.0 クライアント認証情報ベースの認証以外の追加機能を提供しません。OAuth 2.0 クライアント認証情報ベースの認証の場合は、まずサポートされている Google Cloud APIs のトランスポート ファイルをインポートしてから、OAuth 2.0 クライアント認証情報のトランスポート ファイルをインポートします。
OAuth 2.0 クライアント認証情報を使用するには、ご使用の SAP システムが OAuth 2.0 に対応している必要があります。OAuth 2.0 をサポートする SAP システムについては、SAP Note 3041322 - OAuth 2.0 Client: 権限付与タイプのクライアント認証情報のダウンポートをご覧ください。
SAP GUI で、トランザクション コード
STMS_IMPORT
またはSTMS
を使用して、ファイルを SAP システムにインポートします。/GOOG/ABAP_SDK
パッケージのすべてのオブジェクトがアクティブで、整合性のある状態にします。- SAP GUI で、トランザクション コード
SE80
を入力します。 - パッケージ セレクタで、
/GOOG/ABAP_SDK
を選択します。 - [オブジェクト名] フィールドでパッケージ
/GOOG/ABAP_SDK
を右クリックし、[チェック] > [パッケージ チェック] > [パッケージ オブジェクト(サブパッケージを含む)] を選択します。 リスト表示に切り替え アイコンをクリックします。
[パッケージ チェックの結果] 列の緑色のチェックは、すべてのオブジェクトがパッケージ チェックに合格したことを示します。
- SAP GUI で、トランザクション コード
SAP のセキュリティ設定を構成する
ABAP SDK for Google Cloud を Google Cloud APIs に安全に接続する手順は次のとおりです。
SSL 証明書を設定する
必要な Google 証明書をダウンロードして STRUST
にインポートします。
Google Trust Services リポジトリから、次の証明書をダウンロードします。
- GTS Root R1
- GTS CA 1C3
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 Cloud APIs に接続する必要があります。
- SAP ホストシステムで、ファイアウォール ルールとプロキシによって、Compute Engine VM インスタンス外部のサーバーからの HTTPS 接続が許可されていることを確認します。詳しくは、VM インスタンスの作成と開始をご覧ください。
- Google Cloud APIs に到達するためのアクセスが、ネットワークの観点から制限されていないことを確認します。
認可を管理する
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 APIs のロールの要件については、該当する 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
に設定されていることを確認します。[技術的な設定] タブに移動して、次の詳細情報を入力します。
- ターゲット ホスト: 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 サービス名を指定します。
- [実行] をクリックして詳細情報を表示します。
プロキシを構成する
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 圧縮は特定のドキュメントのみを圧縮するをご覧ください。
この機能を有効にしない場合は、この手順をスキップできます。
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 キー名 | 文字列 | クライアント キー構成の名前。例: CLIENT_KEY_API_KEY |
Google Cloud サービス アカウント名 | 文字列 | サービス アカウントの名前(メールアドレス形式)。 |
Google Cloud のスコープ | 文字列 | API アクセス スコープ https://www.googleapis.com/auth/cloud-platform 。このアクセス スコープは、ホスト VM 上のすべての Cloud APIs への完全アクセス権を許可する設定に対応しています。 |
プロジェクト ID | 文字列 | ターゲット API を含む Google Cloud プロジェクトの ID。 |
コマンド名 | 文字列 | OS コマンド名。通常、このフィールドは空白のままにします。 |
認可クラス | 文字列 | Google Cloud との通信に使用する認可クラス。 |
トークンのキャッシュ保存 | ブール値 | Google Cloud から取得したアクセス トークンをキャッシュに保存するかどうかを決めるフラグ。Google Cloud への接続を構成してテストしたら、トークンのキャッシュ保存を有効にすることをおすすめします。トークンのキャッシュ保存の詳細については、トークンのキャッシュ保存を有効にするをご覧ください。 |
トークンの更新期限(秒) | 文字列 | アクセス トークンの有効期限が切れ、更新が必要になるまでの時間(秒)。1 から 3599 の値を指定すると、デフォルトの有効期限の 3500 秒がオーバーライドされます。0 を指定すると、SDK はデフォルト値を使用します。デフォルト値は 3500 です。 |
認可パラメータ 1 | 文字列 | これは、特定の状況で構成を必要とする追加の認可パラメータです。通常、このフィールドは空白のままにします。 |
認可パラメータ 2 | 文字列 | これは、特定の状況で構成を必要とする追加の認可パラメータです。通常、このフィールドは空白のままにします。 |
テーブル /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 サービス名 | 文字列 | Google Cloud サービスの名前。サービスを見つけるには、検索ヘルプを使用します。 |
RFC 宛先 | 文字列 | 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 Cloud APIs にアクセスします。
トークンのキャッシュ保存を有効にすると、アクセス トークンまたは 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 APIs の 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 は、SAP トランスポートとして ABAP SDK for Google Cloud の新しいリリースを提供します。
SAP 管理者は、次の手順に沿って ABAP SDK for Google Cloud を更新できます。
SAP 環境で、ABAP SDK for Google Cloud の既存の API クライアント スタブを使用するバックグラウンド ジョブを停止します。
ダウンロード ポータルから、トランスポート ファイルを含むインストール パッケージをダウンロードします。
次の SAP トランスポート リクエストをインポートします。
バージョン
1
、1.5
、1.6
から最新バージョンに SDK を更新する場合は、次のトランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。/usr/sap/trans/cofiles/K900323.GM1
/usr/sap/trans/data/R900323.GM1
これらのトランスポート ファイルは、ABAP SDK for Google Cloud の非推奨の機能に関連するアーティファクトを削除します。追加機能、拡張機能、非推奨機能については、ABAP SDK for Google Cloud のオンプレミス エディションまたはクラウド エディションの最新情報をご覧ください。
SDK をバージョン
1.7
以降から最新バージョンに更新する場合は、これらのトランスポート ファイルのコピーをスキップできます。
サポートされている Google Cloud API との接続を確立し、トークンまたは API キーで認証するには、次のトランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。
/usr/sap/trans/cofiles/K900319.GM1
/usr/sap/trans/data/R900319.GM1
OAuth 2.0 クライアント認証情報で認証する場合は、次のトランスポート ファイルを SAP Server トランスポート インポート ディレクトリにコピーします。
/usr/sap/trans/cofiles/K900321.GM1
/usr/sap/trans/data/R900321.GM1
これらのトランスポート ファイルは、OAuth 2.0 クライアント認証情報ベースの認証以外の追加機能を提供しません。OAuth 2.0 クライアント認証情報ベースの認証の場合は、まずサポートされている Google Cloud APIs のトランスポート ファイルをインポートしてから、OAuth 2.0 クライアント認証情報のトランスポート ファイルをインポートします。
OAuth 2.0 クライアント認証情報を使用するには、ご使用の SAP システムが OAuth 2.0 に対応している必要があります。OAuth 2.0 をサポートする SAP システムについては、SAP Note 3041322 - OAuth 2.0 Client: 権限付与タイプのクライアント認証情報のダウンポートをご覧ください。
インポートとオブジェクトの有効化が成功したことを確認したら、バックグラウンド ジョブを再開します。
使用状況の指標
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 に関するサポートを受けるをご覧ください。