Amazon Web Services ブログ

AWS SSOによるSAPシングルサインオンの有効化 パート2:SAP Netweaver JavaとAWS SSOの統合

前回のブログの パート1では、 SAP Netweaver ABAPとAWS SSOの統合について紹介しました。このブログでは、任意のSAP Netweaver JavaアプリケーションをAWS Single Sign Onと統合する方法について紹介します。 AWS Single Sign-On (SSO)は、複数のAWSアカウントやブラウザベースのビジネスアプリケーションへのSSOアクセスを簡単に一元管理できるクラウド型のシングルサインオンサービスです。

数回クリックするだけで、独自のSSOインフラストラクチャを運用するための先行投資や継続的なメンテナンスのコストをかけずに、可用性の高いSSOサービスを使用できます。AWS SSOでは、 AWS Organizationsのすべてのアカウントに対するSSOアクセスとユーザー権限を簡単に一元管理することができます。また、AWS SSOには、SAP、Salesforce、Box、Office 365などの多くのビジネスアプリケーションへのSAML統合機能が組み込まれています。さらに、AWS SSOアプリケーション設定ウィザードを使用することで、 Security Assertion Markup Language (SAML) 2.0統合を作成し、SAML対応のアプリケーションにSSOアクセスを拡張することができます。ユーザーは、AWS SSOで設定した認証情報を使ってユーザーポータルにサインインするか、既存の企業認証情報を使ってサインインするだけで、割り当てられたすべてのアカウントとアプリケーションに1か所からアクセスできます。
前提条件
このウォークスルーには以下が必要です。

  • AWS Organizationsで作成された組織。(まだ組織を持っていない場合は、AWS Single Sign-Onによって自動的に組織が作成されます)。
  • Microsoft Active DirectoryまたはAD ConnectorのいずれかでプロビジョニングされたAWS Directory Service。これらのサービスの詳細については、以下のリソースをご参照ください。

ステップ1:AWSコンソールにログオンし、AWS SSOを起動します。SAP Netweaver Javaアプリケーションを追加します

  • AWSコンソールにログオンし、AWS Single Sign Onを起動します。
  • Manage SSO access to your cloud applicationsを選択します。
  • Add a new applicationを選択します。
  • SAP Enterprise portal Javaまたはほか任意のSAP Netweaver Javaアプリケーションを検索します。
  • SAP Enterprise Portal Javaまたはほか任意のJavaアプリケーションにAdd New Applicationを選択します。
  • 独自の説明情報を提供します。この例では、Display Nameを「SAP Enterprise Portal Java Development System」とします。追加されているアプリケーションに説明情報を提供します。
  • View instructionsを選択し、詳細なステップバイステップの手順を表示させます。

ステップ2: SAP Netweaver AdministratorにてSAML 2.0 Local Providerを有効化します

  • SAP Netweaver Java Administratorコンソールにログインします。
  • Netweaver AdministratorにAdministratorとしてログインします。
  • Configurationを選択します。
  • Configuration配下のSecurityを選択します。
  • Configuration配下のAuthentication and Single Sign Onを選択します。
  • SAML 2.0を選択し、Enable SAML 2.0 supportを選択します。

ステップ3: AWS SSOメタデータファイルをダウンロードします

  • SAML 2.0にカスタム・プロバイダー名を入力し、Nextを選択します。こちらの例では、Local Provider NameをAWSSSOとしています。
  • General Settings配下のSigning Key Pairにて、Keystore View SAML2Browseを選択します。
  • Select Keystore Entry配下のCreateを選択します。
  • New Entry、それでEntry Settingsの配下に、下記の情報を入力します。
    • エントリー:ご自分のカスタムのエントリー名
    • アルゴリズム:RSA
    • 鍵の長さ:2048
    • 有効期限
    • 失効期限
  • 必ずstore certificateを選択し、Nextを選択します。
  • Subject Properties配下のKeystorage New Entryに下記の情報を入力します。
    • 国名
    • 州・地域名
    • 組織名
    • 地域名
    • 組織単位名
    • 共通名
  • Sign with Key PairNextを選択します。設定をデフォルトのままにして、Summary配下のFinishを選択します。
  • Signing Key PairEncryption Key Pairを持っていること、およびInclude Certificate in SignatureSign Metadataが選択されたことを確認し、Nextを選択します。
  • SAML 2.0 -> SAML 2.0 Local Provider Configurationの配下にFinishを選択します。
  • SAML 2.0の配下にDownload Metadataを選択します。

ステップ4: AWS SSOメタデータファイルをダウンロードします

  • 前のステップで開いたインストラクションのページに行き、AWS SSOメタデータ・ファイルのダウンロードを選択します。
  • URLをブラウザーにコピーし、AWS SSOメタデータ・ファイルをダウンロードします。

ステップ5: AWS SSOメタデータ・ファイルの SAP にアップロードします

  • SAP SAML 2.0にてTrusted providerを選択します。
  • SAML 2.0配下のAddを選択し、Upload metadata fileを選択します。
  • 前のステップでダウンロードしたAWS SSOメタデータファイルをアップロードし、Nextを選択します。

ステップ6: AWS SSO証明書をアップロードします

  • New Trusted Identity Provider -> Provider Nameの配下にIdentity Providerとしてのエイリアス名(Alias)を入力します。
  • Encryption certificateを選択し、Browseをクリックします。
  • Downloadをクリックし、インストラクションガイドから証明書をダウンロードします。
  • ダウンロードされた証明書をEncryption Certificateにアップロードし、Nextを選択します。
  • Single Sign-On EndpointsHTTP-POSTを選択し、Nextを選択します。
  • Single Log-Out EndpointsHTTP-Redirectを選択し、Nextを選択します。
  • Artifact EndpointsNextを選択します。
  • Manage Name ID EndpointsNextを選択します。
  • Authentication Contexts SettingsFinishを選択します。

ステップ7: ネームIDをunspecifiedに設定します

  • SAML 2.0のTrusted Providersタブをクリックし、Editを選択します。次、Identity Federationタブを選択し、Addを選択します。
  • Format NameUnspecifiedを選択し、OKを選択します。
  • Details of NameID FormatUnspecifiedに設定し、User ID Mapping ModeEmailを選択し、Saveを選択します。

ステップ8: AWS SSOにTrusted providerを有効化します

  • Saveをクリックし、Enableを選択します。

ステップ9: OSSノート2273981に従って、認証スタック(Authentication stack)を設定します

  • Configurationタブに戻って、Authentication and Single Sign-Onを選択し、Componentsタブを選択します。
  • Addを選択し、Configuration Nameに例としてAWSSSOを入力し、Typecustomを選択します。
  • Login Modulesに下記の値を入力し、Saveを選択します。
    • EvaluateTicketLoginModule “Sufficient
    • SAML2LoginModule “Optional
    • CreateTicketLoginModule “Sufficient
    • BasicPasswordLoginModule “Requisite
    • CreateTicketLoginModule “Requisite
  • Componentsページから、Policy Configuration Nameの下にチケットを編集します。 前のステップで作成されたカスタム設定例であるAWSSSOをチケットにアサインします。Saveを選択します。
  • 注:これで、このカスタムの認証スタックを使用するように、チケットが変更されました。特定のNetweaver Javaアプリケーションに対応したアプリケーションにこの認証スタックを設定します。

ステップ10: AWS SSOにアプリケーションのスタートURLを変更します

  • アプリケーション設定をしたAWS SSOコンソールページに戻ります。
  • Application Propertiesの配下に、Application start URLのエリアにSAP Netweaver AS Java URLを入力します。

ステップ10: AWS SSOにSAP Netweaver Javaのlocal provider SAMLメタデータファイルをアップロードします

  • Application metadataの配下に、Browseを選択し、前のステップでダウンロードされたメタデータを選択します。

ステップ11: Applicationsの配下に、AWS SSOにアプリケーションにユーザをアサインします。要求されたADユーザをアサインします。

ステップ12: SAP NWAにアクティブディレクトリのメールIDを紐づけます

  • SAP NWAに入って、configuration -> identify providerにアクセスします。
  • ユーザを作成または修正し、アクティブディレクトリからメールIDを紐づけます。

ステップ13: SSOを検証するために、アプリケーションをテストします

  • SSOをテストするために、SAP Netweaver JavaのアプリケーションURLを入力します。

結論:  シングルサインオンを設定することで、運用を簡素化し、SAPのエンドユーザーの体験を容易にすることは非常に簡単です。AWS SSOはSAML 2.0をサポートするすべてのエンタープライズアプリケーションに使用することができます。AWS SSOは無料で利用できます。 AWS Directory Serviceを通じてマネージドADまたはAD Connectorと統合する場合、AWS Directory Serviceの料金に従い、ユースケースに応じてマネージドAD on AWSまたはAD Connectorの支払いが生じます。

AWS Directory Service の料金

その他のディレクトリタイプ の料金表

AWS SSOはSAML 2.0をサポートするブラウザベースのアプリケーションにのみ使用でき、Kerberosを必要とするSAP GUIには使用できません。以下のガイドに従って、AWS SSOのMFAを有効にすることができます。

多要素認証

5000を超えるSAPのお客様がAWSを選択し、SAPをAWS上で稼働する理由について、https://thinkwithwp.com/jp/sap_japan/をご覧ください。

翻訳はSpecialist SA アッシュが担当しました。原文はこちらです。