

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連線至 LinkedIn
<a name="connecting-to-linkedin"></a>

LinkedIn 是一種付費行銷工具，可透過各種贊助貼文和其他方法提供對 LinkedIn 社交網路的存取。LinkedIn 是一種強大的行銷工具，可讓 B2B 公司建置潛在客戶、線上辨識、共用內容等。

**Topics**
+ [AWS Glue 支援 LinkedIn](linkedin-support.md)
+ [包含用於建立和使用連線的 API 操作的政策](linkedin-configuring-iam-permissions.md)
+ [設定 LinkedIn](linkedin-configuring.md)
+ [設定 LinkedIn 連線](linkedin-configuring-connections.md)
+ [從 LinkedIn 實體中讀取](linkedin-reading-from-entities.md)
+ [LinkedIn 連線選項](linkedin-connection-options.md)
+ [建立 LinkedIn 帳戶](linkedin-create-account.md)
+ [限制](linkedin-connector-limitations.md)

# AWS Glue 支援 LinkedIn
<a name="linkedin-support"></a>

AWS Glue 支援 LinkedIn，如下所示：

**支援作為來源？**  
是。您可以使用 AWS Glue ETL 任務從 LinkedIn 查詢資料。

**支援作為目標？**  
否。

**支援的 LinkedIn API 版本**  
** 202406 (2024 年 6 月) **

# 包含用於建立和使用連線的 API 操作的政策
<a name="linkedin-configuring-iam-permissions"></a>

下列範例政策說明建立和使用 連線所需的 AWS 許可。如果您要建立新角色，請建立包含下列項目的政策：

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:ListConnectionTypes",
        "glue:DescribeConnectionType",
        "glue:RefreshOAuth2Tokens",
        "glue:ListEntities",
        "glue:DescribeEntity"
      ],
      "Resource": "*"
    }
  ]
}
```

------

如果不想使用上述方法，可選擇使用下列受管 IAM 政策：
+  [ AWSGlueServiceRole ](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole) – 准許存取各種 AWS Glue 程序代表您執行所需的資源。這些資源包括 AWS Glue、Amazon S3、IAM、CloudWatch Logs 和 Amazon EC2。如果您遵循此政策中指定資源的命名慣例，則 AWS Glue 程序具有必要的許可。此政策通常會連接至定義編目程式、工作和開發端點時所指定的角色。
+  [AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess) – 當連接政策的身分使用 AWS 管理主控台時，授予對 AWS Glue 資源的完整存取權。如果您依照此政策中指定的資源命名慣例，使用者就能擁有完整的主控台功能。此政策通常連接到 AWS Glue 主控台的使用者。

# 設定 LinkedIn
<a name="linkedin-configuring"></a>

您必須先符合下列要求，才能使用 從 LinkedIn AWS Glue 傳輸：

## 最低需求
<a name="linkedin-configuring-min-requirements"></a>
+ 您有一個 LinkedIn 帳戶。如需有關建立帳戶的詳細資訊，請參閱[建立 LinkedIn 帳戶](linkedin-create-account.md)。
+ 您的 LinkedIn 帳戶已啟用 API 存取。
+ 您已在 LinkedIn 帳戶中建立 `OAuth2 API` 整合。此整合提供用戶端登入資料，在對您的帳戶進行驗證呼叫時， AWS Glue 會使用 安全地存取您的資料。如需詳細資訊，請參閱[建立 LinkedIn 帳戶](linkedin-create-account.md)。

如果您符合這些要求，就可以 AWS Glue 連線到您的 LinkedIn 帳戶。對於一般連線，不需要在 LinkedIn 中執行任何其他操作。

# 設定 LinkedIn 連線
<a name="linkedin-configuring-connections"></a>

 LinkedIn 支援 OAuth2 的 `AUTHORIZATION_CODE` 授權類型。

此授權類型被視為「三條腿的」`OAuth`，因為其依賴將使用者重新導向至第三方授權伺服器來驗證使用者。使用者可以選擇在 LinkedIn 中建立自己的連線應用程式，並在透過 AWS Glue 主控台建立連線時提供自己的用戶端 ID 和用戶端秘密。在此案例中，它們仍會重新導向至 LinkedIn 以登入並授權 AWS Glue 存取其資源。

此授權類型會產生重新整理字符和存取字符。存取字符會在建立後 60 天過期。可以使用重新整理字符來取得新的存取字符。

如需有關為 `Authorization Code OAuth` 流程建立連線應用程式的公有 LinkedIn 文件，請參閱[授權碼流程 (3 條腿的 OAuth)](https://learn.microsoft.com/en-us/linkedin/shared/authentication/authorization-code-flow?toc=%2Flinkedin%2Fmarketing%2Ftoc.json&bc=%2Flinkedin%2Fbreadcrumb%2Ftoc.json&view=li-lms-2024-07&tabs=HTTPS1)。

**設定 LinkedIn 連線**

1.  在 AWS Secrets Manager 中，建立包含下列詳細資訊的秘密：
   + 對於客戶管理的連線應用程式，機密應包含以 `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET` 作為金鑰的連線應用程式消費者機密。
   + 對於 AWS 受管連線應用程式 – 使用一些暫時值清空秘密或秘密。
**注意**  
必須在 AWS Glue中為每個連線建立機密。

1. 在 中 AWS Glue Studio，依照下列步驟在 **Data Connections 下建立連線**：

   1. 選取**連線類型**時，請選取 **LinkedIn**。

   1. 提供 LinkedIn 環境。

   1. 選取 AWS Glue 可擔任的 IAM 角色，並具有下列動作的許可：

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1. 選取您要用於此連線`secretName`的 AWS Glue ，以放置字符。

   1. 如果想要使用您的網路，請選取**網路選項**。

1. 授予與您的 AWS Glue 任務相關聯的 IAM 角色讀取 的許可`secretName`。

# 從 LinkedIn 實體中讀取
<a name="linkedin-reading-from-entities"></a>

**先決條件** 

您要從中讀取的 LinkedIn 物件。請參閱以下支援的實體表格，以檢查可用實體。

 **支援的實體** 


| 實體 | 可以篩選 | 支援限制 | 支援排序依據 | 支援選取 \$1 | 支援分區 | 
| --- | --- | --- | --- | --- | --- | 
| 廣告帳戶 | 是 | 是 | 是 | 是 | 否 | 
| 行銷活動 | 是 | 是 | 是 | 是 | 否 | 
| 行銷活動群組 | 是 | 是 | 是 | 是 | 否 | 
| 創意 | 是 | 是 | 是 | 是 | 否 | 
| 廣告分析 | 是 | 否 | 否 | 是 | 否 | 
| 廣告分析所有廣告帳戶 | 是 | 否 | 否 | 是 | 否 | 
| 廣告分析所有行銷活動 | 是 | 否 | 否 | 是 | 否 | 
| 廣告分析所有行銷活動群組 | 是 | 否 | 否 | 是 | 否 | 
| 廣告分析所有廣告創意 | 是 | 否 | 否 | 是 | 否 | 
| 共用統計資料 | 是 | 否 | 否 | 是 | 否 | 
| 頁面統計資料 | 是 | 否 | 否 | 是 | 否 | 
| 跟隨者統計資料 | 是 | 否 | 否 | 是 | 否 | 

 **範例** 

```
netsuiteerp_read = glueContext.create_dynamic_frame.from_options(
    connection_type="linkedin",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "adaccounts",
        "API_VERSION": "202406"
    }
)
```


**LinkedIn 實體和欄位詳細資訊**  

|  **欄位資料類型**  |  **支援的篩選條件運算子**  | 
| --- | --- | 
|  String  |  =  | 
|  DateTime  |  BETWEEN, =  | 
|  數值  |  =  | 
|  Boolean  |  =  | 

# LinkedIn 連線選項
<a name="linkedin-connection-options"></a>

以下是 LinkedIn 的連線選項：
+ `ENTITY_NAME`(String) - (必要) 用於讀取/寫入。LinkedIn 中物件的名稱。例如，adAccounts。
+ `API_VERSION`(String) - (必要) 用於讀取/寫入。您想要使用的 LinkedIn Rest API 版本。值為 202406，因為 LinkedIn 目前僅支援 202406 版。
+ `SELECTED_FIELDS`(List<String>) - 預設：empty(SELECT \$1)。用於讀取。您要為所選實體選取的資料欄。
+ `FILTER_PREDICATE`(String) - 預設：空白。用於讀取。其應該為 Spark SQL 格式。
+ `QUERY`(String) - 預設：空白。用於讀取。完整的 Spark SQL 查詢。

# 建立 LinkedIn 帳戶
<a name="linkedin-create-account"></a>

**建立 LinkedIn 應用程式和 OAuth 憑證**

1. 導覽至 **LinkedIn 開發人員網路**頁面，並使用 LinkedIn 帳戶憑證登入。

1. 導覽至**我的應用程式**頁面，選擇**建立應用程式**以建立新的 LinkedIn 應用程式。

1. 在應用程式註冊表單中輸入以下詳細資訊：
   + **公司名稱** – 選取現有公司或建立新公司。
   + **名稱** – 輸入應用程式名稱。
   + **說明** – 輸入應用程式說明。
   + **應用程式標誌** – 選取影像檔案作為應用程式標誌。
   + **應用程式使用** – 選取應用程式的用途。
   + **網站 URL** – 輸入包含應用程式詳細資訊的網站 URL。
   + **業務電子郵件** – 輸入您的業務電子郵件地址。
   + **業務電話** – 輸入您的業務電話號碼。
   + **LinkedIn API 使用條款** – 閱讀並同意。

1. 完成應用程式註冊表單之後，選擇**提交**。

   系統會將您重新導向至**身分驗證**頁面，其中會顯示身分驗證金鑰 (用戶端 ID 和用戶端機密) 以及其他相關詳細資訊。

1. 如果 Web 應用程式需要從使用者的 LinkedIn 帳戶中存取其電子郵件地址，請選取 `r_emailaddress` 許可。此外，可以為 LinkedIn 應用程式指定已授權的重新導向 URL。

**在 LinkedIn 帳戶中建立頁面**

1. 導覽至 [LinkedIn 開發人員產品](https://developer.linkedin.com/)。

1. 在 **LinkedIn 開發人員產品**頁面的右上角，選取**我的應用程式**。

1. 在**我的應用程式**頁面的右上角，選取**建立應用程式**。

1. 在**建立應用程式**頁面中，在**應用程式名稱**欄位輸入應用程式名稱。

1. 在 **LinkedIn 頁面**欄位中，輸入公司頁面名稱或 URL。
**注意**  
如果沒有 LinkedIn 頁面，可以選取**建立新的 LinkedIn** 來建立一個。

1. 在**隱私權政策 URL** 欄位中，輸入隱私權政策 URL。

1. 選擇**上傳標誌**以上傳要在使用者使用您的應用程式進行授權時顯示的影像。

1. 在**法律協定**部分中，選取**我已閱讀並同意這些條款**。

1. 選擇**建立應用程式**。

   將建立新應用程式，並可在**我的應用程式**索引標籤下使用。

**在 LinkedIn 中發布行銷活動廣告**

1. 登入 **Campaign Manager**。

1. 選擇現有的**行銷活動群組**，或選擇**建立**以建立新群組。

1. 選取您的目標。

1. 選取您的群組、預算和排程。

1. 建置目標受眾。

1. 選取廣告格式。

1. 選取預算和排程。

1. 設定廣告。

1. 檢閱並啟動。

# 限制
<a name="linkedin-connector-limitations"></a>

對於分析欄位 `ad_analytics_all_adAccounts`、`ad_analytics_all_campaigns`、`ad_analytics_all_campaign_groups` 和 `ad_analytics_all_adCreatives`，需要篩選條件才能擷取記錄。