共用方式為


設定驗證設定

Customer Service 全通路提供一組展現 Dynamics 365 Customer Service Enterprise 強大威力的功能套件,讓組織可以立即與不同數位傳訊管道中的客戶進行聯繫和互動。 存取 Customer Service 全通路需要額外的授權。 如需詳細資訊,請參閱 Dynamics 365 Customer Service 定價概觀Dynamics 365 Customer Service 定價方案頁面。

您可以建立驗證設定來驗證從網域登入的客戶,並根據定義的上下文變數來抽取資訊。 您可以將您的匿名客戶與經過驗證的客戶區分開來,而且您可以依據上下文變數來建立規則。

例如,您可以為匿名客戶和經過驗證的客戶使用不同的佇列。 因為您擁有有關驗證的客戶的詳細資訊,所以您也可以依據特定的變數 (如購物車值或特許狀態) 來設定它們的優先順序。

建立驗證設定記錄之後,您必須將其新增至工作流管道設定中的管道執行個體,才能使其正常運作。 下列管道支援驗證:

  • 聊天
  • Apple Messages for Business

專員會在交談摘要區段中收到客戶是否已驗證的通知。 根據客戶驗證狀態,已驗證欄位會設定為。 其他資訊:交談摘要

先決條件

  • 請確定您的組織具備 OAuth 2.0 和 JSON Web 權杖 (JWT) 的相關工作知識。
  • 確認您是否有安全資料行的權限。 其他資訊:設定存取安全資料行的權限

建立聊天的驗證設定記錄

您可以在管理員應用程式中建立聊天驗證設定記錄。

  1. 移至其中一個管理員應用程式,然後執行下列步驟。

    1. 在網站地圖中,選取客戶支援中的客戶設定客戶設定頁面隨即出現。
    2. 驗證設定區段中,選取管理

    隨即顯示驗證設定頁面。

  2. 選取新增驗證設定,並在新增驗證設定頁面中提供下列資訊:

    • 名稱:輸入驗證設定的名稱。

    • 負責人:接受預設值,或變更為所需的值。

    • 驗證類型:根據預設,這會是無法編輯的 OAuth 2.0 隱含流程。

    • 公開金鑰 URL:指定網域的公開金鑰 URL。 此 URL 可用來驗證來自客戶已登入之網域的 JavaScript 物件標記法 (JSON) 網頁 Token (JWT) 的相關資訊。

    • JavaScript 用戶端函數:指定要用於驗證的 JavaScript 用戶端函數。 此函數會從權杖端點擷取權杖。

      設定聊天驗證設定記錄。

    如需有關如何尋找公開金鑰 URL 和 JavaScript 用戶端函數的詳細資訊,請參閱本文後面的設定 Power Apps 入口網站設定自訂入口網站一節。

  3. 選取儲存

使用 OAuth 2.0 建立聊天的驗證設定記錄

  1. 執行建立聊天的驗證設定記錄中的步驟 1 至 3,並在新增驗證設定頁面中輸入下列詳細資料:

    • 名稱:驗證設定的名稱。
    • 管道類型即時聊天
    • 驗證類型:OAuth 2.0 隱含流程
  2. 選取下一步,並在詳細資料頁面中輸入下列資訊:

    • 權杖自訂動作:自訂代碼參考,以驗證識別提供者提供的權杖並傳回已驗證使用者的使用者識別碼。
    • 權杖 URL:用於將授權碼與權杖 (此權杖會傳遞至客戶動作以取得使用者識別碼) 進行交換的 URL。
    • 重新導向 URL:傳遞至原始授權碼要求的 URL,這是呼叫權杖交換端點時的必要參數。
    • 用戶端識別碼:傳遞至權杖交換端點之用戶端的識別碼。
    • 用戶端密碼:驗證傳遞至權杖交換端點之用戶端的密碼。
    • 範圍:使用者透過流程中取得之權杖所獲授權的範圍。
  3. 儲存變更。

新增聊天 Widget 驗證

  1. 在 Customer Service 系統管理中心中,編輯工作流設定中的聊天 Widget,並移至行為索引標籤。

  2. 驗證設定方塊中,瀏覽並選取聊天驗證記錄。

當入口網站上的登入客戶開啟聊天 Widget 時,JavaScript 用戶端函數會將 JWT 從用戶端傳遞至伺服器。 系統會使用公開金鑰解密並驗證 JWT,然後將資訊傳遞至客戶服務全通路的聊天專員。 做為系統管理員,您也可以定義自訂的上下文變數,傳遞有關 JWT 登入客戶的其他資訊。 內容變數必須完全依照其在與聊天 wdget 相關聯之工作流中的定義來定義。 其他資訊:管理內容變數

設定 Power Apps 入口網站

如果您在使用 Power Apps 入口網站所開發的網站上新增聊天 widget 的驗證,則公開金鑰 URL 和 JavaScript 用戶端函數和 JWT 都現成可用。 您必須上傳自訂憑證,以在 Power Apps 入口網站上提供有效的公開金鑰 URL。

  • 公開金鑰 URL<portal_base_URL>/_services/auth/publickey
  • JavaScript 用戶端函數auth.getAuthenticationToken

Power Apps 入口網站會嘗試透過其 JavaScript 用戶端函數傳入的內容,自動將連絡人記錄連結至交談。

設定自訂入口網站

如果您要將經過驗證的聊天體驗新增至不是使用 Power Apps 入口網站所開發的自訂網站,則 Web 開發團隊必須執行下列步驟,系統管理員才能設定已驗證的聊天:

  1. 在其驗證服務器中建立公開/私密金鑰組。 金鑰必須是使用 RSA256 演算法所產生。

    以下是產生私密/公開金鑰組的範例程式碼。

    openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
    openssl rsa -pubout -in private_key.pem -out public_key.pem
    
  2. 建立會傳回您的公開金鑰的端點。 全通路伺服器會使用此公開金鑰,以驗證授權聊天要求過程中所傳遞的 JWT 權杖。 建立驗證設定記錄時,管理員應用程式中會輸入此端點的 URL。

    您的公開金鑰端點看起來類似這個範例:

      -----BEGIN PUBLIC KEY----- 
      NIIBIjANBgkqhkiG9w0BAQEFABCOPQ8AMIIBCgKCAQEAn+BjbrY5yhSpLjcV3seP 
      mNvAvtQ/zLwkjCbpc8c0xVUOzEdH8tq4fPi/X5P/Uf2CJomWjdOf1wffmOZjFasx 
      ELG+poTqy5uX2dNhH6lOMUsV31QGG36skLivpLBCSK6lWlzsV6WGkb/m8r86aGzp 
      jtNhw8yvoTYB4updDrJ8pC+tx4EWK0WEmKn1GsW6TjUtxJjcTLI1puSbmcGHbkSi 
      RSbWkKPqaEVFALprw+W5ZCung5QX3KOkY/rJd+2JwULm7okyQCQaF7qwa5i9Uf65 
      7M6ZL4vsDevq7E/v3tf6qxpSSHzt4XspXVQty9QHhqDqBEY3PfI4L2JjgIGuPhfS 
      YQIDAQAB 
      -----END PUBLIC KEY-----   
    
    

如果您需要使用多個公開金鑰,則公開金鑰端點可以傳回一組 <kid, publickey> 配對,其中 kid 會參考金鑰識別元。 金鑰識別元配對必須是唯一的。 您需要在步驟 4 的 JWT 權杖中傳遞 kid。 如果您要使用多個金鑰,則公開金鑰端點應該會傳回類似這樣的內容。 公開金鑰是 Base64 編碼的金鑰。

 [
      { 
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=",
          "publicKey": LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      },
 {
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp__valid=",
          "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      } 
 ]
  1. 您需要一個會產生 JWT 的服務,以便在對已驗證使用者起始聊天的過程中傳送至全通路的伺服器。

    a. JWT 看起來會類似下列範例:

    { 
      "alg": "RS256", 
      "typ": "JWT", 
    } 
    

    如果要使用多個公開金鑰,則必須傳入金鑰識別元 (kid)。 您的標頭看起來類似這個範例:

    { 
      "alg": "RS256", 
      "typ": "JWT",
      "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4="
    } 
    

    b. JWT 承載應包含下列項目:

    • 至少含下列宣告:

      索賠 定義
      iss 權杖的簽發者。
      iat 以數值日期格式發行權杖的日期。
      exp 此權杖的到期日 (數值日期格式)。
      sub 宣告的主旨。
      注意:建議您將 Customer Service 中連絡人或客戶記錄的 GUID 傳遞給登入的使用者。 此 GUID 將用來找出連絡人記錄並將其連結至交談。
    • lwicontexts 這個內容變數可傳入做為交談之一部分,以作路由傳遞之用,或顯示給專員。
      其他資訊:
      管理自訂上下文
      setAuthTokenProvider 方法
      使用內容變數來自動識別記錄

    • 任何其他要傳遞的資料。

    您的承載看起來類似這個範例:

      { 
          "sub" : "87b4d06c-abc2-e811-a9b0-000d3a10e09e",  
          "lwicontexts" :"{\"msdyn_cartvalue\":\"10000\", \"msdyn_isvip\":\"false\", \"portalcontactid\":\"87b4d06c-abc2-e811-a9b0-000d3a10e09e\"}", 
          "iat" : 1542622071, 
          "iss" : "contosohelp.com", 
          "exp" : 1542625672, 
          "nbf" : 1542622072 
      } 
    

    c. JWT 簽章應以您的私密金鑰來簽署。

    注意

    • 如果權杖已過期或無效,則聊天 widget 會擲回錯誤事件。
    • 已驗證的聊天不支援 setContextProvider 方法。 您應該傳入 lwicontext 做為 JWT 承載的一部分。
  2. 在網站上建立 JavaScript 函數,此函數接受回呼函數,並將 JWT 傳回至回呼函數。 為避免逾時,此 JavaScript 函數必須在 10 秒內傳回 JWT。 此 JWT 必須:

    • 包含步驟 3 中的標頭、承載和簽章。

    • 以步驟 1 中金鑰組的私密金鑰來進行簽署。

      (建議在 Web 伺服器上產生您的 JWT)。

      此 JavaScript 方法的名稱會在全通路管理應用程式中用來建立驗證設定記錄。

      // This is a sample JavaScript client function  
      
      auth.getAuthenticationToken = function(callback){ 
      
        var xhttp = new XMLHttpRequest(); 
        xhttp.onreadystatechange = function() { 
            if (this.readyState == 4 && this.status == 200) { 
                callback(xhttp.responseText); 
            } 
        }; 
        xhttp.onerror = function(error) { 
            callback(null); 
        }; 
      //Replace this with a call to your token generating service 
        xhttp.open("GET", "https://contosohelp.com/token", true); 
        xhttp.send(); 
      } 
      
  3. 開發人員必須與全通路管理員共用下列資訊:

    a. 步驟 2 中的公開金鑰服務 URL。

    範例: https://www.contoso.com/auth/publickey

    b. 步驟 4 中 JavaScript 用戶端函數的名稱。 即時聊天 widget 會在聊天開始時於內部呼叫此名稱。

    範例:auth.getAuthenticationToken

    Note

    如果使用者體驗會在驗證使用者使用者之前公開聊天按鈕,請務必視需要將這些使用者重新導向至您的驗證頁面。 此動作可使用步驟 4 中的方法完成,或依照先前在您的使用者流程中的步驟進行。

    下圖示範安裝程式。

    已驗證的聊天設定。

    您可以接著依照下列步驟設定已驗證的聊天:

設定已驗證的聊天

  1. 移至管理員應用程式,並使用上一節步驟 5 中的資訊建立驗證設定記錄。 其他資訊:建立聊天驗證設定記錄

  2. 將驗證設定與要有驗證體驗的聊天 widget 建立關聯。 其他資訊:將驗證新增至聊天 widget

    下圖示範使用者在已驗證設定中存取聊天時的呼叫順序。

    已驗證的聊天執行階段。

建立 Apple Messages for Business 的驗證設定

先決條件

  • 設定驗證設定的系統管理員需要更多的安全性權限。 其他資訊:設定欄位的安全性權限

  • 請確定您的組織具備 OAuth 2.0 授權碼流程或 OAuth 2.0 OpenID Connect 流程的相關工作知識。 下列各節概述適用於這兩個類型的步驟。

  • 確認您的組織至少有一個 Apple Messages for Business 驗證類型多媒體訊息。 進行設定時需要此多媒體訊息。

使用 OAuth 2.0 驗證碼流程建立 Apple Messages for Business 的驗證設定記錄

  1. 在 Customer Service 系統管理中心或全通路系統管理中心應用程式網站地圖中,選取客戶設定,然後選取管理驗證設定。 會顯示現有驗證設定的清單。

  2. 選取新增驗證設定,然後在新增驗證設定頁面中提供下列詳細資料:

    1. 管道類型頁面上,輸入名稱,並選取 Apple Messages for Business 做為管道類型。
      驗證類型預設為 OAuth 2.0 授權碼流程

    2. 新增驗證設定頁面中,提供下列資訊:

      • 用戶端值:授權伺服器所簽發的 OAuth 2.0 用戶端識別碼。
      • 用戶端密碼:用於驗證傳送至授權伺服器之要求的用戶端密碼。
      • 範圍:每個新增的範圍都會指定您已向客戶要求的使用者資料片段。 範圍內容必須完全符合透過服務提供者所提供的內容。
      • 存取權杖 URL:服務提供者可從中要求存取權杖的端點。
      • 解密的權杖 URL:OAuth 2.0 API 可在其中擷取範圍內所要求客戶資訊的端點。
    3. 其他詳細資料頁面上,您可以選擇定義存取權杖到期時間 (以秒為單位)。 預設到期時間為一小時。
      在指定的時間之後,先前經過驗證之交談的進行中交談區段中的已驗證欄位將變更為

    4. 多媒體訊息頁面上,選取新增,然後選取一個或多個要與此驗證設定建立關聯的多媒體訊息。

    5. 檢閱摘要頁面,然後選取完成。 驗證設定已設定。

使用 OAuth 2.0 OpenID Connect 流程建立 Apple Messages for Business 的驗證設定記錄

  1. 在 Customer Service 系統管理中心或全通路系統管理中心網站地圖中,選取客戶設定,然後選取驗證設定的管理。 會顯示現有驗證設定的清單。

  2. 選取新增驗證設定,然後在新增驗證設定頁面中提供下列詳細資料:

    1. 管道類型頁面上,輸入名稱,並選取 Apple Messages for Business 做為管道類型。

    2. 變更驗證類型 OAuth 2.0 OpenID Connect 流程

    3. 新增驗證設定頁面中,提供下列資訊:

      • 用戶端值:授權伺服器所簽發的 OAuth 2.0 用戶端識別碼。
      • 用戶端密碼:用於驗證傳送至授權伺服器之要求的用戶端密碼。
      • 範圍:每個新增的範圍都會指定您已向客戶要求的使用者資料片段。 範圍內容必須完全符合透過服務提供者所提供的內容。
      • 存取權杖 URL:服務提供者可從中要求存取權杖的端點。
      • 解密的權杖 URL:OAuth 2.0 API 可在其中擷取範圍內所要求客戶資訊的端點。
      • 其他參數:允許驗證服務接受要求中的額外參數。
    4. 其他詳細資料頁面上,您可以選擇定義存取權杖到期時間 (以秒為單位)。 預設到期時間為一小時。
      在指定的時間之後,先前已驗證交談之客戶摘要區段中的已驗證欄位將會變更為

    5. 多媒體訊息頁面上,選取新增,然後選取一個或多個要與此驗證設定建立關聯的多媒體訊息。

    6. 檢閱摘要頁面,然後選取下一步。 驗證設定已設定。

    7. 重新導向資訊頁面中,複製 URL。 您可以在允許的回撥 URL 下,將此 URL 新增至驗證服務提供者的網站。

    8. 選取完成

將驗證新增至 Apple Messages for Business 管道

  1. 開啟包含您要將驗證新增至之管道執行個體的工作流。

  2. 在管道設定的行為頁面上,瀏覽至驗證設定、啟用該功能,然後從下拉式功能表選取正確的設定。 其他資訊:設定 Apple Messages for Business 管道

  3. 選取編輯,以檢閱或更新每個執行個體的驗證設定。

另請參閱

新增聊天 widget
設定交談前問卷
建立快速回覆
建立和管理營運時間
在 Power Apps 入口網站中內嵌聊天 Widget
自動識別客戶