Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaアプリケーションからSAP汎用モジュールRFC_SYSTEM_INFOを呼び出すために必要なユーザ権限(S_RFC)の設定方法

Java Connector(JCo)を使用してSAPシステムに接続し、汎用モジュール(ファンクションモジュール)を呼び出す場合、モジュールのメタデータを読み取るための基本認可が必要になります。この際に重要となるのが、RFC呼び出し用の認可オブジェクト「S_RFC」です。

S_RFC認可オブジェクトの構成フィールド

S_RFCオブジェクトは、以下の3つのフィールドで構成されています。

  • RFC_TYPE:保護対象のRFCオブジェクトの種類。「FUGR」(汎用グループ/ファンクショングループ)または「FUNC」(汎用モジュール/ファンクションモジュール)の値を指定します。
  • RFC_NAME:保護対象のRFC名。汎用グループ名または汎用モジュール名が格納されます。
  • CTVT(活動):許可するアクティビティ。RFC実行の場合は「16」を指定します。

設定例:汎用グループ「ABCD」へのリモート呼び出しを許可する場合

例えば、ユーザーに対して汎用グループ「ABCD」内の汎用モジュールをリモートから呼び出せるようにするには、以下のような認可値を設定します。

活動(ACTVT)16
保護対象RFCオブジェクト名(RFC_NAME)ABCD
保護対象RFCオブジェクト種類(RFC_TYPE)FUGR

ABAPでの認可チェックコード例

ABAP側では、以下のように「AUTHORITY_CHECK_RFC」ファンクションモジュールを使用して認可チェックを行うことができます。

CALL FUNCTION 'AUTHORITY_CHECK_RFC'
    EXPORTING
      USERID = 'USER'
      FUNCTIONGROUP = 'ABCD'
    EXCEPTIONS
      RFC_NO_AUTHORITY = 1.

ユーザーへの認可割り当て方法

ユーザーにこの認可オブジェクトを割り当てるには、トランザクションコード SU01(ユーザーマスタ管理)を使用します。

JavaアプリケーションからSAP汎用モジュールRFC_SYSTEM_INFOを呼び出すために必要なユーザ権限(S_RFC)の設定方法

また、認可のメンテナンスにはトランザクションコード SU03(認可メンテナンス)、認可オブジェクト自体のメンテナンスには SU21(認可オブジェクトメンテナンス)を利用できます。

JavaアプリケーションからSAP汎用モジュールRFC_SYSTEM_INFOを呼び出すために必要なユーザ権限(S_RFC)の設定方法

注意点:汎用モジュールを「リモート対応(Remote Enabled)」にする

もう一つ重要な注意点として、外部から呼び出すSAP汎用モジュールは「リモート対応(Remote Enabled Module)」として設定されている必要があります。この設定は、トランザクションコード SE37(ABAPファンクションビルダー)の属性タブから行えます。

JavaアプリケーションからSAP汎用モジュールRFC_SYSTEM_INFOを呼び出すために必要なユーザ権限(S_RFC)の設定方法

これらの設定を正しく行うことで、JavaアプリケーションからRFC_SYSTEM_INFOなどの汎用モジュールを問題なく呼び出せるようになります。

  1. SAP JCoでSAPサーバーとJavaアプリケーションを接続する方法:メッセージサーバー接続の活用

    SAP JCoによるSAPサーバー接続:メッセージサーバー方式への切り替えを推奨SAP Java Connector(SAP JCo)を使用してSAPシステムに接続する際、JCO_AHOST(アプリケーションサーバーホスト)と JCO_SYSNR(システム番号)による直接接続の代わりに、メッセージサーバー経由の負荷分散接続を利用することをお勧めします。直接接続は特定のアプリケーションサーバーインスタンスに固定されるため、そのインスタンスがダウンした場合や高負荷状態にある場合に影響を受けやすくなります。一方、メッセージサーバー経由の接続では、ログオングループ内の利用可能なアプリケーションサーバー

  2. Macから電話をかける・受ける方法|iPhoneとの連携設定を徹底解説

    iPhoneをお持ちなら、Macでも電話の発着信が可能です。通話はiPhoneを経由して行われるため、相手にはいつもと同じ電話番号で表示され、Macで話していることには気づかれません。 この記事では、Macで電話を発着信できるようにする設定方法を解説します。設定を済ませておけば、iPhoneが家の別の部屋で鳴っていても、カバンの奥にしまわれたままでも、Macに通知が表示され、そのまま応答できるようになります。 また、ちょっとした用件で電話をかけたいときも、わざわざiPhoneを取り出す必要はありません。Macから直接発信できます。 通話はあくまでiPhone経由で行われるため、通話時間は通常ど