建立Workfront整合的OAuth2應用程式
作為Adobe Workfront管理員,您可以為您的Workfront執行個體建立OAuth2應用程式,允許其他應用程式存取Workfront。 之後,您的使用者可以授予這些其他應用程式存取其Workfront資料的許可權。 如此一來,您就可以整合 搭配您選擇的應用程式,包括您自己的內部應用程式。
建立OAuth2應用程式時,會產生使用者端ID和使用者端密碼。 接著,您的使用者便可在API呼叫中使用使用者端ID,將與您建立的應用程式整合。
- 如需有關設定和搭配使用者認證(授權碼流程)使用OAuth2應用程式的指示,請參閱使用授權碼流程設定和使用您組織的自訂OAuth2應用程式。
- 如需使用伺服器驗證(JWT流程)設定及使用OAuth2應用程式的指示,請參閱使用JWT流程設定及使用您組織的自訂OAuth2應用程式。
- 如需使用PKCE設定及使用OAuth2應用程式的指示,請參閱使用PKCE流程設定及使用您組織的自訂OAuth2應用程式。
存取需求
您必須具有下列存取權才能執行本文中的步驟:
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header | |
---|---|
Adobe Workfront 計畫* | 任何 |
Adobe Workfront 授權* |
新增:Standard 或 目前:計畫 |
存取層級設定* | 您必須是Workfront管理員。 |
*若要瞭解您擁有的計畫、授權型別或存取權,請連絡您的Workfront管理員。
OAuth2總覽
假設應用程式必須從Workfront提取一些特定資訊。 要求資訊的應用程式稱為使用者端。 在此範例中,使用者端名稱為ClientApp。 ClientApp需要存取特定使用者的資訊,因此必須以該使用者的身分存取Workfront。 如果您的使用者提供ClientApp的使用者名稱和密碼,ClientApp就可以存取使用者可存取的所有資料。 這是安全性風險,因為ClientApp只需要一小組特定資訊。
當您為ClientApp建立OAuth2應用程式時,基本上是告訴Workfront ClientApp可以存取Workfront,但前提是使用者的ClientApp帳戶正在存取,該使用者才有存取許可權。
建立Oauth2應用程式
建立OAuth2應用程式時,請選擇最符合整合需求的應用程式型別。
最適合伺服器上執行的CLI、精靈或指令碼
範例:
-
Shell
-
Python
最適合行動或單頁網頁應用程式
範例:
-
Javascript
-
Angular
-
React
-
Vue
最適合在伺服器上處理認證和權杖的伺服器端應用程式
範例:
-
Go
-
Java
-
ASP.Net
-
Node.js
-
PHP
使用伺服器驗證(JWT流程)建立OAuth2應用程式 create-an-oauth2-application-using-server-authentication-jwt-flow
-
按一下Adobe Workfront右上角的 主功能表 圖示
-
在左側導覽面板中,按一下 系統,然後選取 OAuth2應用程式。
-
按一下 建立應用程式整合。
顯示 新OAuth2應用程式 方塊。 -
在 新OAuth2應用程式 方塊中,選取 機器對機器應用程式。
-
輸入新應用程式的名稱,例如ClientApp的"Workfront"。
-
按一下「建立」。
-
填寫新應用程式的欄位。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 layout-auto html-authored no-header 使用者端ID 此欄位會自動產生。 使用者端密碼 此欄位會自動產生
重要:
在關閉此頁面之前,請先將此欄位的內容複製到另一個安全檔案。 您將無法再看到此秘密金鑰。
如果您遺失此金鑰,請刪除並建立使用者端密碼。
-
按一下 Delete 圖示
-
按一下 新增使用者端密碼 以產生新的使用者端密碼。
公開金鑰 伺服器對伺服器應用程式使用公開和私密金鑰進行驗證。 執行下列其中一項:
-
按一下 新增公開金鑰,然後輸入其他應用程式的公開金鑰。
-
按一下 產生公開/私密金鑰組,然後與其他應用程式共用公開金鑰。
名稱 此名稱與您提供應用程式的名稱相同。 此欄位不得為空白。 說明 輸入整合的說明。 -
-
按一下「儲存」。
如需有關設定和搭配使用者認證(授權代碼流程)使用OAuth2應用程式的指示,請參閱使用JWT流程設定和使用您組織的自訂OAuth2應用程式。
使用使用者認證建立OAuth2應用程式(授權代碼流程) create-an-oauth2-application-using-user-credentials-authorization-code-flow
-
按一下Adobe Workfront右上角的 主功能表 圖示
-
在左側導覽面板中,按一下 系統,然後選取 OAuth2應用程式。
-
按一下 建立應用程式整合。
顯示 新的OAuth2應用程式。
-
在 新OAuth2應用程式 方塊中,選取 網頁應用程式。
-
輸入新OAuth2應用程式的名稱,例如ClientApp的「Workfront」。
-
按一下「建立」。
-
填寫新應用程式的欄位。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 layout-auto html-authored no-header 使用者端ID 此欄位會自動產生。 使用者端密碼 此欄位會自動產生
重要:
在關閉此頁面之前,請先將此欄位的內容複製到另一個安全檔案。 您將無法再看到此秘密金鑰。
如果您遺失此金鑰,請刪除並建立使用者端密碼。
-
按一下 Delete 圖示
-
按一下 新增使用者端密碼 以產生新的使用者端密碼。
重新導向URL 使用者透過Workfront驗證後,將會重新導向至此路徑。 重新整理權杖輪換 啟用此選項以在每次使用重新整理權杖時,發出新的重新整理權杖。您的應用程式必須在每次重新整理後,儲存新的重新整理權杖。 絕對重新整理權杖到期 選取您希望在重新整理權杖過期之前存在的時間。 當它過期時,您的使用者必須再次登入整合。 如果您不希望重新整理權杖過期,請選取「無過期」。 非使用狀態重新整理權杖期限 選取多長時間,如果使用者未在使用您的系統中,其重新整理Token就會過期。
例如,如果非使用狀態重新整理權杖到期日為6個月,而使用者已有6個月未登入,則重新整理權杖將會到期,即使絕對重新整理權杖到期日可能設定的時間更長。
標誌 您可以新增標誌,讓此應用程式更具識別性。 名稱 此名稱與您提供應用程式的名稱相同。 此欄位不得為空白。 說明 輸入整合的說明。 應用程式說明URL 這可以是「關於我們」頁面的連結,或包含整合詳細資訊的頁面。 -
-
按一下「儲存」。
如需有關設定和搭配使用者認證(授權碼流程)使用OAuth2應用程式的指示,請參閱使用授權碼流程設定和使用您組織的自訂OAuth2應用程式。
使用PKCE建立OAuth2單頁網頁應用程式 create-an-oauth2-single-page-web-application-using-pkce
-
按一下Adobe Workfront右上角的 主功能表 圖示
-
在左側導覽面板中,按一下 系統,然後選取 OAuth2應用程式。
-
按一下 建立應用程式整合。
顯示 新OAuth2應用程式 方塊。
-
在 新OAuth2應用程式 方塊中,選取 單頁網頁應用程式。
-
輸入新OAuth2應用程式的名稱,例如「Workfront for ClientApp」。
-
按一下「建立」。
-
填寫新應用程式的欄位。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 layout-auto html-authored no-header 使用者端ID 此欄位會自動產生。 重新導向URL 使用者透過Workfront驗證後,系統會將使用者重新導向至此路徑。 每次使用時都輪換重新整理權杖 啟用此選項以在每次使用重新整理權杖時,發出新的重新整理權杖。您的應用程式必須在每次重新整理後,儲存新的重新整理權杖。 絕對期限 選取您希望在重新整理權杖過期之前存在的時間。 當它過期時,您的使用者必須再次登入整合。 如果您不希望重新整理權杖過期,請選取「無過期」。 非使用狀態到期日 選取多長時間,如果使用者未在使用您的系統中,其重新整理Token就會過期。
例如,如果非使用狀態重新整理權杖到期日為6個月,而使用者已有6個月未登入,則重新整理權杖將會到期,即使絕對重新整理權杖到期日可能設定的時間更長。
標誌 您可以新增標誌,讓此應用程式更具識別性。 名稱 此名稱與您提供應用程式的名稱相同。 此欄位不得為空白。 說明 輸入整合的說明。 開發人員姓名 這是設定OAuth2應用程式的開發人員名稱。 開發人員電子郵件地址 這是設定OAuth2應用程式的開發人員電子郵件地址。 隱私權原則URL 這是貴組織儲存隱私權原則的連結。 -
按一下「儲存」。
設定並使用建立的OAuth2應用程式
進一步設定及使用已建立的OAuth2應用程式需要一些技術知識,包括API呼叫。
- 如需有關設定和搭配使用者認證(授權碼流程)使用OAuth2應用程式的指示,請參閱使用授權碼流程設定和使用您組織的自訂OAuth2應用程式。
- 如需使用伺服器驗證(JWT流程)設定及使用OAuth2應用程式的指示,請參閱使用JWT流程設定及使用您組織的自訂OAuth2應用程式。
- 如需使用PKCE設定及使用OAuth2應用程式的指示,請參閱使用PKCE流程設定及使用您組織的自訂OAuth2應用程式。
授權代碼流程的OAuth2流程
以授權代碼和存取權杖授權 authorizing-with-an-authorization-code-and-access-token
-
ClientApp需要來自Workfront的一些資訊,所以會傳送要求給Workfront API
/authorize
端點。 要求包含response_typecode
,表示要求應傳回授權碼。 -
這會觸發Workfront傳送驗證提示給使用者。 使用者可以在提示中輸入其認證,這會授予Workfront與ClientApp通訊的許可權。 如果使用者已登入Workfront,則可跳過此步驟。
-
Workfront API傳送授權代碼給ClientApp。
-
ClientApp在要求中將下列資訊傳送至Workfront API
/token
端點:- 在步驟3中傳送至ClientApp的授權代碼。 這會識別使用者許可權的特定執行個體。
- 您在Workfront中設定ClientApp OAuth2應用程式時所產生的使用者端密碼。 這可讓Workfront知道要求來自ClientApp。
-
如果授權代碼和使用者端密碼正確,Workfront會傳送存取權杖給ClientApp。 此存取權杖會直接從Workfront傳送到ClientApp,任何其他使用者或使用者端應用程式都無法檢視、複製或使用。
-
ClientApp傳送存取權杖給Workfront以及特定的資訊要求。
-
因為存取權杖正確,Workfront會將資訊傳送至ClientApp。
正在重新整理存取權杖
為了安全起見,存取權杖會在短時間內過期。 若要取得新的存取權杖而不需每次都輸入認證,OAuth2會使用重新整理權杖。 重新整理Token會由使用者端儲存。
取得重新整理權杖的程式與授權授權授權代碼和存取權杖一節中討論的程式相同。 授權碼的要求包含範圍offline_access
,表示要求應該連同授權碼一起傳回要求權杖。