教學課程:Azure Active Directory 單一登入 (SSO) 與 SAP NetWeaver 整合Tutorial: Azure Active Directory Single sign-on (SSO) integration with SAP NetWeaver

在本教學課程中,您會了解如何整合 SAP NetWeaver 與 Azure Active Directory (Azure AD)。In this tutorial, you'll learn how to integrate SAP NetWeaver with Azure Active Directory (Azure AD). 在整合 SAP NetWeaver 與 Azure AD 時,您可以︰When you integrate SAP NetWeaver with Azure AD, you can:

  • 在 Azure AD 中控制可存取 SAP NetWeaver 的人員。Control in Azure AD who has access to SAP NetWeaver.
  • 讓使用者使用其 Azure AD 帳戶自動登入 SAP NetWeaver。Enable your users to be automatically signed-in to SAP NetWeaver with their Azure AD accounts.
  • 在 Azure 入口網站集中管理您的帳戶。Manage your accounts in one central location - the Azure portal.

若要深入了解 SaaS 應用程式與 Azure AD 整合,請參閱什麼是搭配 Azure Active Directory 的應用程式存取和單一登入To learn more about SaaS app integration with Azure AD, see What is application access and single sign-on with Azure Active Directory.

必要條件Prerequisites

若要開始,您需要下列項目:To get started, you need the following items:

  • Azure AD 訂用帳戶。An Azure AD subscription. 如果沒有訂用帳戶,您可以取得免費帳戶If you don't have a subscription, you can get a free account.
  • 啟用 SAP NetWeaver 單一登入 (SSO) 的訂用帳戶。SAP NetWeaver single sign-on (SSO) enabled subscription.
  • 至少需要 SAP NetWeaver V7.20SAP NetWeaver V7.20 required atleast

案例描述Scenario description

SAP NetWeaver 支援 SAML (SP 起始的 SSO) 和 OAuthSAP NetWeaver supports both SAML (SP initiated SSO) and OAuth. 在本教學課程中,您會在測試環境中設定和測試 Azure AD SSO。In this tutorial, you configure and test Azure AD SSO in a test environment.

注意

依據您的組織需求,以 SAML 或 OAuth 設定應用程式。Configure the application either in SAML or in OAuth as per your organizational requirement.

若要設定 SAP NetWeaver 與 Azure AD 整合,您需要從資源庫將 SAP NetWeaver 新增到受控 SaaS 應用程式清單中。To configure the integration of SAP NetWeaver into Azure AD, you need to add SAP NetWeaver from the gallery to your list of managed SaaS apps.

  1. 使用公司或學校帳戶或個人的 Microsoft 帳戶登入 Azure 入口網站Sign in to the Azure portal using either a work or school account, or a personal Microsoft account.
  2. 在左方瀏覽窗格上,選取 [Azure Active Directory] 服務。On the left navigation pane, select the Azure Active Directory service.
  3. 巡覽至 [企業應用程式] ,然後選取 [所有應用程式] 。Navigate to Enterprise Applications and then select All Applications.
  4. 若要新增應用程式,請選取 [新增應用程式] 。To add new application, select New application.
  5. 在 [從資源庫新增] 區段的搜尋方塊中輸入 SAP NetWeaverIn the Add from the gallery section, type SAP NetWeaver in the search box.
  6. 從結果面板選取 [SAP NetWeaver] ,然後新增應用程式。Select SAP NetWeaver from results panel and then add the app. 當應用程式新增至您的租用戶時,請等候幾秒鐘。Wait a few seconds while the app is added to your tenant.

設定及測試 SAP NetWeaver 的 Azure AD 單一登入Configure and test Azure AD single sign-on for SAP NetWeaver

以名為 B.Simon 的測試使用者,設定及測試與 SAP NetWeaver 搭配運作的 Azure AD SSO。Configure and test Azure AD SSO with SAP NetWeaver using a test user called B.Simon. 若要讓 SSO 能夠運作,您必須建立 Azure AD 使用者與 SAP NetWeaver 中相關使用者之間的連結關聯性。For SSO to work, you need to establish a link relationship between an Azure AD user and the related user in SAP NetWeaver.

若要設定及測試與 SAP NetWeaver 搭配運作的 Azure AD SSO,請完成下列建置組塊:To configure and test Azure AD SSO with SAP NetWeaver, complete the following building blocks:

  1. 設定 Azure AD SSO ,讓您的使用者能夠使用此功能。Configure Azure AD SSO to enable your users to use this feature.
    1. 建立 Azure AD 測試使用者 ,以使用 B.Simon 測試 Azure AD 單一登入。Create an Azure AD test user to test Azure AD single sign-on with B.Simon.
    2. 指派 Azure AD 測試使用者 ,讓 B.Simon 能夠使用 Azure AD 單一登入。Assign the Azure AD test user to enable B.Simon to use Azure AD single sign-on.
  2. 使用 SAML 設定 SAP NetWeaver ,以在應用程式端設定 SSO 設定。Configure SAP NetWeaver using SAML to configure the SSO settings on application side.
    1. 建立 SAP NetWeaver 測試使用者 ,使 SAP NetWeaver 中 B.Simon 的對應身分連結到該使用者在 Azure AD 中的代表身分。Create SAP NetWeaver test user to have a counterpart of B.Simon in SAP NetWeaver that is linked to the Azure AD representation of user.
  3. 測試 SSO ,以驗證組態是否能運作。Test SSO to verify whether the configuration works.
  4. 設定適用於 OAuth 的 SAP NetWeaver ,以在應用程式端設定 SSO 設定。Configure SAP NetWeaver for OAuth to configure the OAuth settings on application side.

設定 Azure AD SSOConfigure Azure AD SSO

在本節中,您會在 Azure 入口網站中啟用 Azure AD 單一登入。In this section, you enable Azure AD single sign-on in the Azure portal.

若要使用 SAP NetWeaver 設定 Azure AD 單一登入,請執行下列步驟:To configure Azure AD single sign-on with SAP NetWeaver, perform the following steps:

  1. 開啟新的 Web 瀏覽器視窗,以系統管理員身分登入您的 SAP NetWeaver 公司網站Open a new web browser window and sign into your SAP NetWeaver company site as an administrator

  2. 確定 httphttps 服務為作用中,並已在 SMICM T-Code 中指派適當的連接埠。Make sure that http and https services are active and appropriate ports are assigned in SMICM T-Code.

  3. 登入 SAP 系統 (T01) 的商務用戶端 (需要 SSO),並啟用 HTTP 安全性工作階段管理。Sign on to business client of SAP System (T01), where SSO is required and activate HTTP Security session Management.

    a.a. 移至交易代碼 SICF_SESSIONSGo to Transaction code SICF_SESSIONS. 它會顯示所有相關的設定檔參數以及目前的值。It displays all relevant profile parameters with current values. 如下所示:They look like below:-

    login/create_sso2_ticket = 2
    login/accept_sso2_ticket = 1
    login/ticketcache_entries_max = 1000
    login/ticketcache_off = 0  login/ticket_only_by_https = 0 
    icf/set_HTTPonly_flag_on_cookies = 3
    icf/user_recheck = 0  http/security_session_timeout = 1800
    http/security_context_cache_size = 2500
    rdisp/plugin_auto_logout = 1800
    rdisp/autothtime = 60
    

    注意

    依照貴組織的需求來調整上述參數。這裡所提供的上述參數僅作為指示。Adjust above parameters as per your organization requirements, Above parameters are given here as indication only.

    b.b. 如果需要調整參數,在 SAP 系統的執行個體/預設設定檔中,重新啟動 SAP 系統。If necessary adjust parameters, in the instance/default profile of SAP system and restart SAP system.

    c.c. 在相關用戶端上按兩下,以啟用 HTTP 安全性工作階段。Double-click on relevant client to enable HTTP security session.

    憑證下載連結

    d.d. 啟用以下 SICF 服務:Activate below SICF services:

    /sap/public/bc/sec/saml2
    /sap/public/bc/sec/cdc_ext_service
    /sap/bc/webdynpro/sap/saml2
    /sap/bc/webdynpro/sap/sec_diag_tool (This is only to enable / disable trace)
    
  4. 在 SAP 系統 [T01/122] 的商務用戶端中,移至交易代碼 SAML2Go to Transaction code SAML2 in business client of SAP system [T01/122]. 它會在瀏覽器中開啟使用者介面。It will open a user interface in a browser. 在此範例中,我們假設 122 為 SAP 商務用戶端。In this example, we assumed 122 as SAP business client.

    憑證下載連結

  5. 提供您的使用者名稱和密碼以在使用者介面中輸入,然後按一下 [編輯] 。Provide your username and password to enter in user interface and click Edit.

    憑證下載連結

  6. 將 [提供者名稱] 從 T01122 取代為 http://T01122,然後按一下 [儲存] 。Replace Provider Name from T01122 to http://T01122 and click on Save.

    注意

    根據預設,提供者名稱格式為 <sid><client>,但 Azure AD 預期該名稱的格式為 <protocol>://<name>,因此建議將提供者名稱保持為 https://<sid><client>,以允許在 Azure AD 中設定多個 SAP NetWeaver ABAP 引擎。By default provider name come as <sid><client> format but Azure AD expects name in the format of <protocol>://<name>, recommending to maintain provider name as https://<sid><client> to allow multiple SAP NetWeaver ABAP engines to configure in Azure AD.

    憑證下載連結

  7. 產生服務提供者中繼資料:在 SAML 2.0 使用者介面上設定好 [本機提供者] 和 [信任的提供者] 設定後,下一個步驟是產生服務提供者的中繼資料檔案 (其中包含 SAP 中的所有設定、驗證內容和其他組態)。Generating Service Provider Metadata:- Once we are done with configuring the Local Provider and Trusted Providers settings on SAML 2.0 User Interface, the next step would be to generate the service provider’s metadata file (which would contain all the settings, authentication contexts and other configurations in SAP). 產生這個檔案後,我們就需要在 Azure AD 中上傳此檔案。Once this file is generated we need to upload this in Azure AD.

    憑證下載連結

    a.a. 移至 [本機提供者] 索引標籤。Go to Local Provider tab.

    b.b. 按一下 [中繼資料] 。Click on Metadata.

    c.c. 在電腦上儲存產生的 [中繼資料 XML 檔案] ,然後在 [基本 SAML 設定] 區段中上傳該檔案,以在 Azure 入口網站中自動填入 [識別碼] 和 [回覆 URL] 值。Save the generated Metadata XML file on your computer and upload it in Basic SAML Configuration section to autopopulate the Identifier and Reply URL values in Azure portal.

依照下列步驟在 Azure 入口網站中啟用 Azure AD SSO。Follow these steps to enable Azure AD SSO in the Azure portal.

  1. Azure 入口網站的 [SAP NetWeaver] 應用程式整合頁面上,尋找 [管理] 區段並選取 [單一登入] 。In the Azure portal, on the SAP NetWeaver application integration page, find the Manage section and select Single sign-on.

  2. 在 [選取單一登入方法] 頁面上,選取 [SAML] 。On the Select a Single sign-on method page, select SAML.

  3. 在 [以 SAML 設定單一登入] 頁面上,按一下 [基本 SAML 設定] 的編輯/畫筆圖示,以編輯設定。On the Set up Single Sign-On with SAML page, click the edit/pen icon for Basic SAML Configuration to edit the settings.

    編輯基本 SAML 組態

  4. 在 [基本 SAML 設定] 區段上,如果您想要以 IDP 起始模式設定應用程式,請執行下列步驟:On the Basic SAML Configuration section, if you wish to configure the application in IDP initiated mode, perform the following step:

    a.a. 按一下 [上傳中繼資料檔案] ,上傳您稍早取得的 [服務提供者中繼資料檔案] 。Click Upload metadata file to upload the Service Provider metadata file, which you have obtained earlier.

    b.b. 按一下資料夾圖示以選取中繼資料檔案,然後按一下 [上傳] 。Click on folder logo to select the metadata file and click Upload.

    c.c. 當中繼資料檔案成功上傳後,會自動在 [基本 SAML 設定] 區段文字方塊中填入 [識別碼] 及 [回覆 URL] 值,如下所示:After the metadata file is successfully uploaded, the Identifier and Reply URL values get auto populated in Basic SAML Configuration section textbox as shown below:

    d.d. 在 [登入 URL] 文字方塊中,以下列模式輸入 URL︰https://<your company instance of SAP NetWeaver>In the Sign-on URL text box, type a URL using the following pattern: https://<your company instance of SAP NetWeaver>

    注意

    我們注意到有少數客戶回報錯誤,指出我們為其執行個體設定的回覆 URL 不正確。We have seen few customers reporting an error of incorrect Reply URL configured for their instance. 如果您收到任何這類錯誤,則可以使用下列 PowerShell 指令碼來加以解決,以便為您的執行個體設定正確的回覆 URL:If you receive any such error, you can use following PowerShell script as a work around to set the correct Reply URL for your instance.:

    Set-AzureADServicePrincipal -ObjectId $ServicePrincipalObjectId -ReplyUrls "<Your Correct Reply URL(s)>"
    

    ServicePrincipal 物件識別碼可由您先自行設定,也可以先在此跳過。ServicePrincipal Object ID is to be set by yourself first or you can pass that also here.

  5. SAP NetWeaver 應用程式需要特定格式的 SAML 判斷提示,因此您必須將自訂屬性對應加入 SAML 權杖屬性組態。SAP NetWeaver application expects the SAML assertions in a specific format, which requires you to add custom attribute mappings to your SAML token attributes configuration. 以下螢幕擷取畫面顯示預設屬性清單。The following screenshot shows the list of default attributes. 按一下 [編輯] 圖示以開啟 [使用者屬性] 對話方塊。Click Edit icon to open User Attributes dialog.

    image

  6. 在 [使用者屬性] 對話方塊的 [使用者宣告] 區段中,如上圖所示設定 SAML 權杖屬性,然後執行下列步驟:In the User Claims section on the User Attributes dialog, configure SAML token attribute as shown in the image above and perform the following steps:

    a.a. 按一下 [編輯] 圖示以開啟 [管理使用者宣告] 對話方塊。Click Edit icon to open the Manage user claims dialog.

    image

    映像

    b.b. 從 [轉換] 清單中,選取 [ExtractMailPrefix()] 。From the Transformation list, select ExtractMailPrefix().

    c.c. 從 [參數 1] 清單中,選取 [user.userprinicipalname] 。From the Parameter 1 list, select user.userprinicipalname.

    d.d. 按一下 [檔案] 。Click Save.

  7. 在 [以 SAML 設定單一登入] 頁面上的 [SAML 簽署憑證] 區段中,尋找 [同盟中繼資料 XML] ,然後選取 [下載] 來下載憑證,並將其儲存在電腦上。On the Set up Single Sign-On with SAML page, in the SAML Signing Certificate section, find Federation Metadata XML and select Download to download the certificate and save it on your computer.

    憑證下載連結

  8. 在 [設定 SAP NetWeaver] 區段上,依據您的需求複製適當的 URL。On the Set up SAP NetWeaver section, copy the appropriate URL(s) based on your requirement.

    複製組態 URL

建立 Azure AD 測試使用者Create an Azure AD test user

在本節中,您將在 Azure 入口網站中建立名為 B.Simon 的測試使用者。In this section, you'll create a test user in the Azure portal called B.Simon.

  1. 在 Azure 入口網站的左窗格中,依序選取 [Azure Active Directory] 、[使用者] 和 [所有使用者] 。From the left pane in the Azure portal, select Azure Active Directory, select Users, and then select All users.
  2. 在畫面頂端選取 [新增使用者] 。Select New user at the top of the screen.
  3. 在 [使用者] 屬性中,執行下列步驟:In the User properties, follow these steps:
    1. 在 [名稱] 欄位中,輸入 B.SimonIn the Name field, enter B.Simon.
    2. 在 [使用者名稱] 欄位中,輸入 username@companydomain.extension。In the User name field, enter the username@companydomain.extension. 例如: B.Simon@contoso.comFor example, B.Simon@contoso.com.
    3. 選取 [顯示密碼] 核取方塊,然後記下 [密碼] 方塊中顯示的值。Select the Show password check box, and then write down the value that's displayed in the Password box.
    4. 按一下頁面底部的 [新增] 。Click Create.

指派 Azure AD 測試使用者Assign the Azure AD test user

在本節中,您會將 SAP NetWeaver 的存取權授與 B.Simon,讓她能夠使用 Azure 單一登入。In this section, you'll enable B.Simon to use Azure single sign-on by granting access to SAP NetWeaver.

  1. 在 Azure 入口網站中,選取 [企業應用程式] ,然後選取 [所有應用程式] 。In the Azure portal, select Enterprise Applications, and then select All applications.

  2. 在應用程式清單中,選取 [SAP NetWeaver] 。In the applications list, select SAP NetWeaver.

  3. 在應用程式的概觀頁面中尋找 [管理] 區段,然後選取 [使用者和群組] 。In the app's overview page, find the Manage section and select Users and groups.

    [使用者和群組] 連結

  4. 選取 [新增使用者] ,然後在 [新增指派] 對話方塊中選取 [使用者和群組] 。Select Add user, then select Users and groups in the Add Assignment dialog.

    [新增使用者] 連結

  5. 在 [使用者和群組] 對話方塊的 [使用者] 清單中選取 [B.Simon] ,然後按一下畫面底部的 [選取] 按鈕。In the Users and groups dialog, select B.Simon from the Users list, then click the Select button at the bottom of the screen.

  6. 如果您在 SAML 判斷提示中需要任何角色值,請在 [選取角色] 對話方塊的清單中為使用者選取適當的角色,然後按一下畫面底部的 [選取] 按鈕。If you're expecting any role value in the SAML assertion, in the Select Role dialog, select the appropriate role for the user from the list and then click the Select button at the bottom of the screen.

  7. 在 [新增指派] 對話方塊中,按一下 [指派] 按鈕。In the Add Assignment dialog, click the Assign button.

使用 SAML 設定 SAP NetWeaverConfigure SAP NetWeaver using SAML

  1. 登入 SAP 系統並移至交易程式碼 SAML2。Sign in to SAP system and go to transaction code SAML2. 它會開啟包含 SAML 組態畫面的新瀏覽器視窗。It opens new browser window with SAML configuration screen.

  2. 若要設定信任的識別提供者 (Azure AD) 的端點,請移至 [信任的提供者] 索引標籤。For configuring End points for trusted Identity provider (Azure AD) go to Trusted Providers tab.

    設定單一登入

  3. 按下 [新增] ,然後從操作功能表中選取 [上傳中繼資料檔案] 。Press Add and select Upload Metadata File from the context menu.

    設定單一登入

  4. 上傳您從 Azure 入口網站下載的中繼資料檔案。Upload metadata file, which you have downloaded from the Azure portal.

    設定單一登入

  5. 在下一個畫面中輸入別名名稱。In the next screen type the Alias name. 例如 aadsts,然後按 [下一步] 繼續。For example, aadsts and press Next to continue.

    設定單一登入

  6. 確定 [摘要演算法] 應該是 SHA-256,而不需要任何變更,並且按 [下一步] 。Make sure that your Digest Algorithm should be SHA-256 and don’t require any changes and press Next.

    設定單一登入

  7. 在 [單一登入端點] 上,使用 [HTTP POST] 並且按 [下一步] 繼續。On Single Sign-On Endpoints, use HTTP POST and click Next to continue.

    設定單一登入

  8. 在 [單一登入端點] 上,選取 [HTTPRedirect] 並且按 [下一步] 繼續。On Single Logout Endpoints select HTTPRedirect and click Next to continue.

    設定單一登入

  9. 在 [成品端點] ,按 [下一步] 繼續。On Artifact Endpoints, press Next to continue.

    設定單一登入

  10. 在 [驗證需求] 上,按一下 [完成] 。On Authentication Requirements, click Finish.

    設定單一登入

  11. 移至 [信任的提供者] 索引標籤 > [識別身分同盟] (位於畫面底部)。Go to tab Trusted Provider > Identity Federation (from bottom of the screen). 按一下 [編輯] 。Click Edit.

    設定單一登入

  12. 按一下 [識別身分同盟] 索引標籤 (視窗底部) 之下的 [新增] 。Click Add under the Identity Federation tab (bottom window).

    設定單一登入

  13. 在快顯視窗中,從 [支援的 NameID 格式] 中選取 [未指定] ,然後按一下 [確定]。From the pop-up window, select Unspecified from the Supported NameID formats and click OK.

    設定單一登入

  14. 請注意,[使用者識別碼來源] 和 [使用者識別碼對應模式] 值會決定 SAP 使用者與 Azure AD 宣告之間的連結。Note that user ID Source and user ID mapping mode values determine the link between SAP user and Azure AD claim.

    案例:SAP 使用者與 Azure AD 使用者的對應。Scenario: SAP User to Azure AD user mapping.

    a.a. SAP 的 NameID 詳細資料螢幕擷取畫面。NameID details screenshot from SAP.

    設定單一登入

    b.b. 提及 Azure AD 必要宣告的螢幕擷取畫面。Screenshot mentioning Required claims from Azure AD.

    設定單一登入

    案例:根據在 SU01 中設定的電子郵件地址選取 SAP 使用者識別碼。Scenario: Select SAP user ID based on configured email address in SU01. 在此情況下,應針對每位需要 SSO 的使用者在 su01 中設定電子郵件識別碼。In this case email ID should be configured in su01 for each user who requires SSO.

    a.a. SAP 的 NameID 詳細資料螢幕擷取畫面。NameID details screenshot from SAP.

    設定單一登入

    b.b. 提及 Azure AD 必要宣告的螢幕擷取畫面。screenshot mentioning Required claims from Azure AD.

    設定單一登入

  15. 按一下 [儲存] ,然後按一下 [啟用] 以啟用識別提供者。Click Save and then click Enable to enable identity provider.

    設定單一登入

  16. 出現提示時,按一下 [確定] 。Click OK once prompted.

    設定單一登入

    建立 SAP NetWeaver 測試使用者Create SAP NetWeaver test user

    在本節中,您要在 SAP NetWeaver 中建立名為 B.simon 的使用者。In this section, you create a user called B.simon in SAP NetWeaver. 請與您內部的 SAP 專家小組合作,或與貴組織的 SAP 夥伴合作,在 SAP NetWeaver 平台中新增使用者。Please work your in house SAP expert team or work with your organization SAP partner to add the users in the SAP NetWeaver platform.

測試 SSOTest SSO

  1. 啟用識別提供者 Azure AD 後,請嘗試存取下列 URL 來檢查 SSO (不會出現輸入使用者名稱和密碼的提示)Once the identity provider Azure AD was activated, try accessing below URL to check SSO (there will no prompt for username & password)

    https://<sapurl>/sap/bc/bsp/sap/it00/default.htm

    (或) 使用下列 URL(or) use the URL below

    https://<sapurl>/sap/bc/bsp/sap/it00/default.htm

    注意

    以實際的 SAP 主機名稱取代 sapurl。Replace sapurl with actual SAP hostname.

  2. 上述 URL 應會帶您前往以下所述的畫面。The above URL should take you to below mentioned screen. 如果您能夠連到以下頁面,就表示 Azure AD SSO 成功完成設定。If you are able to reach up to the below page, Azure AD SSO setup is successfully done.

    設定單一登入

  3. 如果出現使用者名稱和密碼提示,請使用下面的 URL 來啟用追蹤,以診斷問題。If username & password prompt occurs, please diagnose the issue by enable the trace using below URL

    https://<sapurl>/sap/bc/webdynpro/sap/sec_diag_tool?sap-client=122&sap-language=EN#

設定適用於 OAuth 的 SAP NetWeaverConfigure SAP NetWeaver for OAuth

  1. 您可在下列位置取得 SAP 記載的程序:NetWeaver 閘道服務啟用及 OAuth 2.0 範圍建立SAP Documented process is available at the location: NetWeaver Gateway Service Enabling and OAuth 2.0 Scope Creation

  2. 移至 SPRO,並尋找 [啟用和維護服務] 。Go to SPRO and find Activate and Maintain services.

    設定單一登入

  3. 在此範例中,我們要使用 OAuth 將 OData 服務:DAAG_MNGGRP 連線到 Azure AD SSO。In this example we want to connect the OData service: DAAG_MNGGRP with OAuth to Azure AD SSO. 使用技術服務名稱搜尋 DAAG_MNGGRP 服務,如果尚未啟動則加以啟動 (在 ICF 節點索引標籤底下查看 green 狀態)。Use the technical service name search for the service DAAG_MNGGRP and activate if not yet active, already (look for green status under ICF nodes tab). 確定系統別名 (已連線的後端系統,也就是實際執行服務的位置) 是否正確。Ensure if system alias (the connected backend system, where the service actually running) is correct.

    設定單一登入

    • 然後按一下頂端按鈕列上的 [OAuth] 按鈕,並指派 scope (保留所提供的預設名稱)。Then click pushbutton OAuth on the top button bar and assign scope (keep default name as offered).
  4. 我們範例中的範圍是 DAAG_MNGGRP_001,這是從自動新增數字的服務名稱所產生。For our example the scope is DAAG_MNGGRP_001, it is generated from the service name by automatically adding a number. /IWFND/R_OAUTH_SCOPES 報表可以用來變更範圍的名稱,或以手動方式建立。Report /IWFND/R_OAUTH_SCOPES can be used to change name of scope or create manually.

    設定單一登入

    注意

    soft state status is not supported 訊息 – 可以忽略,並不會有問題。Message soft state status is not supported – can be ignored, as no problem. 如需詳細資訊,請參閱這裡For more details, refer here

建立 OAuth 2.0 用戶端的服務使用者Create a service user for the OAuth 2.0 Client

  1. OAuth2 會使用 service ID 來代表使用者取得存取權杖。OAuth2 uses a service ID to get the access token for the end-user on its behalf. OAuth 設計的重要限制:OAuth 2.0 Client ID 必須等同 OAuth 2.0 用戶端要求存取權杖時用於登入的 usernameImportant restriction by OAuth design: the OAuth 2.0 Client ID must be identical with the username the OAuth 2.0 client uses for login when requesting an Access Token. 因此,在我們的範例中,我們將註冊名為 CLIENT1 的 OAuth 2.0 用戶端,然後必須有相同名稱 (CLIENT1) 的使用者存在於 SAP 系統中,而且該使用者將設定為由參考應用程式使用。Therefore, for our example, we are going to register an OAuth 2.0 client with name CLIENT1, and as a prerequisite a user with the same name (CLIENT1) must exist in the SAP system and that user we will configure to be used by the referred application.

  2. 註冊 OAuth 用戶端時,我們會使用 SAML Bearer Grant typeWhen registering an OAuth Client we use the SAML Bearer Grant type.

    注意

    如需詳細資訊,請從這裡參閱 SAML 持有人權杖授與類型的 OAuth 2.0 用戶端註冊For more details, refer OAuth 2.0 Client Registration for the SAML Bearer Grant Type here

  3. tcod:SU01 / 將使用者 CLIENT1 建立為 System type 並指派密碼,然後將其儲存,因為需將認證提供給 API 程式設計人員,他們會將密碼和使用者名稱寫入呼叫程式碼。tcod: SU01 / create user CLIENT1 as System type and assign password, save it as need to provide the credential to the API programmer, who should burn it with the username to the calling code. 不應指派設定檔或角色。No profile or role should be assigned.

使用建立精靈來註冊新的 OAuth 2.0 用戶端識別碼Register the new OAuth 2.0 Client ID with the creation wizard

  1. 若要註冊新的 OAuth 2.0 用戶端,請啟動 SOAUTH2 交易。To register a new OAuth 2.0 client start transaction SOAUTH2. 交易將會顯示已註冊的 OAuth 2.0 用戶端概觀。The transaction will display an overview about the OAuth 2.0 clients that were already registered. 選擇 [建立] ,為新的 OAuth 用戶端 (在此範例中稱為 CLIENT1) 啟動精靈。Choose Create to start the wizard for the new OAuth client named as CLIENT1in this example.

  2. 前往 T-Code:SOAUTH2 並提供描述,然後按 [下一步] 。Go to T-Code: SOAUTH2 and Provide the description then click next.

    設定單一登入

    設定單一登入

  3. 從下拉式清單中選取已新增的 SAML2 IdP – Azure AD,然後儲存。Select the already added SAML2 IdP – Azure AD from the dropdown list and save.

    設定單一登入

    設定單一登入

    設定單一登入

  4. 在範圍指派底下按一下 [新增] ,以新增先前建立的範圍:DAAG_MNGGRP_001Click on Add under scope assignment to add the previously created scope: DAAG_MNGGRP_001

    設定單一登入

    設定單一登入

  5. 按一下 [完成] 。Click finish.

其他資源Additional resources