This is an automated email from the ASF dual-hosted git repository.

kassiez pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 3d1ea5cbd34 Update video link (#2628)
3d1ea5cbd34 is described below

commit 3d1ea5cbd34bb5039b45ee357e2a515eff101dff
Author: KassieZ <[email protected]>
AuthorDate: Tue Jul 15 14:58:16 2025 +0800

    Update video link (#2628)
    
    ## Versions
    
    - [ ] dev
    - [ ] 3.0
    - [ ] 2.1
    - [ ] 2.0
    
    ## Languages
    
    - [ ] Chinese
    - [ ] English
    
    ## Docs Checklist
    
    - [ ] Checked by AI
    - [ ] Test Cases Built
---
 .../aws-authentication-and-authorization.md        | 155 +++++++++++---------
 .../aws-authentication-and-authorization.md        | 156 ++++++++++++---------
 static/images/iam-role-doris-demo.png              | Bin 0 -> 507931 bytes
 3 files changed, 174 insertions(+), 137 deletions(-)

diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/auth/integrations/aws-authentication-and-authorization.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/auth/integrations/aws-authentication-and-authorization.md
index f1c3479ba3c..9f845e97544 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/auth/integrations/aws-authentication-and-authorization.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/auth/integrations/aws-authentication-and-authorization.md
@@ -5,33 +5,33 @@
 }
 ---
 
-Doris 支持两种 AWS 认证、鉴权方式访问 AWS 服务,`IAM User`和`Assumed Role`,本文介绍如何配置这两种认证、鉴权方式的 
AWS 安全凭证并通过安全凭证使用Doris相关的功能来访问AWS的服务资源。
+Doris 支持两种 AWS 认证、鉴权方式访问 AWS 服务,`IAM User`和`Assumed Role`,本文介绍如何配置这两种认证、鉴权方式的 
AWS 安全凭证并通过安全凭证使用 Doris 相关的功能来访问 AWS 的服务资源。
 
-# 认证方式介绍
+## 认证方式介绍
 
-## IAM User 认证鉴权
+### IAM User 认证鉴权
 
-Doris 支持通过 配置`AWS IAM 
User`的方式来实现对外部数据源的访问(即`access_key`和`secret_key`密钥的方式),详细的配置步骤如下(更详细的介绍请参见 AWS 
官网文档 [IAM 
users](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)):
+Doris 支持通过 配置`AWS IAM 
User`的方式来实现对外部数据源的访问(即`access_key`和`secret_key`密钥的方式),详细的配置步骤如下 (更详细的介绍请参见 AWS 
官网文档 [IAM 
users](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)):
 
-### Step1 登录AWS控制台创建IAM User并配置IAM策略
+#### Step1 登录 AWS 控制台创建 IAM User 并配置 IAM 策略
 
 1. 登录 `AWS控制台` 选择 `Create user` 按钮
 
 ![](/images/integrations/create_iam_user.png)
 
-2. 填写好IAM user名字后,在`Set pemissions`部分选择直接附加策略
+2. 填写好 IAM user 名字后,在`Set pemissions`部分选择直接附加策略
 
 ![](/images/integrations/iam_user_attach_policy1.png)
 
-3. 在策略编辑器中填入对应的AWS资源策略,下文以访问S3 Bucket资源为例列出了读/写策略的常见模板
+3. 在策略编辑器中填入对应的 AWS 资源策略,下文以访问 S3 Bucket 资源为例列出了读/写策略的常见模板
 
 ![](/images/integrations/iam_user_attach_policy2.png)
 
-S3 Bucket读策略模版,适用于只需读取和列出bucket中对象的Doris功能,比如S3 Load, TVF,External Catalog等
+S3 Bucket 读策略模版,适用于只需读取和列出 bucket 中对象的 Doris 功能,比如 S3 Load,TVF,External 
Catalog 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -59,11 +59,11 @@ S3 Bucket读策略模版,适用于只需读取和列出bucket中对象的Doris
 }
 ```
 
-S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的Doris功能,比如Export, Storage Vault, 
Resource,Repository等
+S3 Bucket 写策略模板,适用于需要读取、列出和写入 bucket 对象的 Doris 功能,比如 Export,Storage 
Vault,Resource,Repository 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -98,16 +98,17 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
 }
 ```
 
-4. 创建IAM User成功后,创建access/secret key密钥
+4. 创建 IAM User 成功后,创建 access/secret key 密钥
 
 ![](/images/integrations/iam_user_create_ak_sk.png)
 
-### Step2 通过访问密钥和SQL语句使用Doris对应功能
+#### Step2 通过访问密钥和 SQL 语句使用 Doris 对应功能
 
-完成上述Step1中的所有配置后,可获得`access_key`和`secret_key`访问密钥,通过访问密钥可以使用Doris对应的功能,具体例子如下:
+完成上述 Step1 中的所有配置后,可获得`access_key`和`secret_key`访问密钥,通过访问密钥可以使用 Doris 
对应的功能,具体例子如下:
 
-#### S3 Load
-```SQL
+**S3 Load**
+
+```sql
   LOAD LABEL s3_load_2022_04_01
   (
       DATA INFILE("s3://your_bucket_name/s3load_example.csv")
@@ -130,8 +131,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   );
 ```
 
-#### TVF
-```SQL
+**TVF**
+
+```sql
   SELECT * FROM S3 (
       'uri' = 's3://your_bucket/path/to/tvf_test/test.parquet',
       'format' = 'parquet',
@@ -142,8 +144,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   )
 ```
 
-#### External Catalog
-```SQL
+**External Catalog**
+
+```sql
   CREATE CATALOG iceberg_catalog PROPERTIES (
       'type' = 'iceberg',
       'iceberg.catalog.type' = 'hadoop',
@@ -155,8 +158,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   );
 ```
 
-#### Storage Vault
-```SQL
+**Storage Vault**
+
+```sql
 CREATE STORAGE VAULT IF NOT EXISTS s3_demo_vault
 PROPERTIES (
     "type" = "S3",
@@ -171,8 +175,9 @@ PROPERTIES (
 );
 ```
 
-#### Export
-```SQL
+**Export**
+
+```sql
 EXPORT TABLE s3_test TO "s3://your_bucket/a/b/c" 
 PROPERTIES (
     "column_separator"="\\x07", 
@@ -185,8 +190,9 @@ PROPERTIES (
 )
 ```
 
-#### Repository
-```SQL
+**Repository**
+
+```sql
 CREATE REPOSITORY `s3_repo`
 WITH S3
 ON LOCATION "s3://your_bucket/s3_repo"
@@ -199,8 +205,9 @@ PROPERTIES
 );
 ```
 
-#### Resource
-```SQL
+**Resource**
+
+```sql
 CREATE RESOURCE "remote_s3"
 PROPERTIES
 (
@@ -215,45 +222,51 @@ PROPERTIES
 
 您可以在不同业务逻辑里指定不同的 IAM User 的 `access_key` 和 `secret_key`,从而实现外部数据的访问控制。
 
-## Assumed Role 认证鉴权
+### Assumed Role 认证鉴权
 
-Assumed Role 支持通过担任 AWS IAM Role 来实现对外部数据源的访问认证和鉴权(详细的介绍请参见 AWS 官网文档 
[代入角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)),下图列出了Assumed
 Role所需要配置的简要流程:
+Assumed Role 支持通过担任 AWS IAM Role 来实现对外部数据源的访问认证和鉴权 (详细的介绍请参见 AWS 官网文档 
[代入角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)),下图列出了
 Assumed Role 所需要配置的简要流程:
 
 ![](/images/integrations/assumed_role_flow.png)
 
-名词介绍:
+名词介绍:
 
-`源账户(Source Account)`​: 发起 Assume Role 的 AWS 账户(本例中是Doris FE/BE EC2机器所属账户);
+`源账户(Source Account)`: 发起 Assume Role 的 AWS 账户 (本例中是 Doris FE/BE EC2 机器所属账户);
 
-`目标账户(Target Account)`​: 拥有目标 S3 Bucket 的 AWS 账户;
+`目标账户(Target Account)`: 拥有目标 S3 Bucket 的 AWS 账户;
 
-`ec2_role`:  源账户创建的Role,并且需要绑定到每一个部署Doris FE/BE 部署EC2机器上;
+`ec2_role`:  源账户创建的 Role,并且需要绑定到每一个部署 Doris FE/BE 部署 EC2 机器上;
 
-`bucket_role`: 目标账户创建的Role,并且需要关联目标bucket权限;
+`bucket_role`: 目标账户创建的 Role,并且需要关联目标 bucket 权限;
 
 **注意:&#x20;**
 
-1. **源账户和目标账户可以是同一个AWS账户;**
-2. **请确保所有Doris FE/BE 部署所在的 EC2机器都绑定到了`ec_role`上,尤其是扩容的时候。**
+1. **源账户和目标账户可以是同一个 AWS 账户;**
+2. **请确保所有 Doris FE/BE 部署所在的 EC2 机器都绑定到了`ec_role`上,尤其是扩容的时候。**
+
+操作演示 Demo 如下:
+
+<a 
href="https://www.bilibili.com/video/BV1U3uezjEPW/?vd_source=20479f0462e74fcf98f1df731639610f";>
+  <img src="/zh-CN/images/iam-role-doris-demo.png" alt="AWS IAM Role" />
+</a>
 
 更详细的配置步骤如下:
 
-### Step1 准备工作
+#### Step1 准备工作
 
-1. 请确保源账户创建了一个`ec2_role`,Doris FE/BE 部署的EC2机器都绑定到了新创建的`ec2_role`;
+1. 请确保源账户创建了一个`ec2_role`,Doris FE/BE 部署的 EC2 机器都绑定到了新创建的`ec2_role`;
 
-2. 请确保目标账户创建了一个`bucket_role`和对应的bucket;
+2. 请确保目标账户创建了一个`bucket_role`和对应的 bucket;
 
-EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
+EC2 机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 
 ![](/images/integrations/ec2_instance.png)
 
-### Step2 配置源账户IAM角色( EC2 实例关联角色) 权限策略
+#### Step2 配置源账户 IAM 角色 ( EC2 实例关联角色) 权限策略
 
 1. 登录 [AWS IAM 
控制台](https://us-east-1.console.aws.amazon.com/iamv2/home#/home),在左侧导航栏选择 
`Access management > Roles`;
 2. 找到 `EC2` 实例关联角色,单击角色名称;
-3. 在角色详情页的 `Permissions`  区域, 单击 `Add permissions` 并选择 `Create inline policy`;
-4. 在 `Specify permissions` 步骤, 单击 JSON 页签,然后填入如下策略,最后,单击 `Review policy`;
+3. 在角色详情页的 `Permissions`  区域,单击 `Add permissions` 并选择 `Create inline policy`;
+4. 在 `Specify permissions` 步骤,单击 JSON 页签,然后填入如下策略,最后,单击 `Review policy`;
 
 ![](/images/integrations/source_role_permission.png)
 
@@ -270,14 +283,14 @@ EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 }
 ```
 
-### Step3 配置目标账户IAM角色信任策略和权限策略
+#### Step3 配置目标账户 IAM 角色信任策略和权限策略
 
 1. 登录 [AWS IAM 
控制台](https://us-east-1.console.aws.amazon.com/iamv2/home#/home),在左侧导航栏选择 
`Access management > Roles` 找到 `Assumed Target Role`,单击角色名称 在角色详情页上;
-2. 单击 `Trust relationships` 页签,然后在 `Trust relationships` 页签上单击 `Edit trust 
policy`。在 `Edit trust policy` 页面中填入如下JSON。最后,单击 `Update policy`(需要把下面策略中的 
`<ec2_iam_role_arn>` 替换为 EC2 实例关联角色的 ARN);
+2. 单击 `Trust relationships` 页签,然后在 `Trust relationships` 页签上单击 `Edit trust 
policy`。在 `Edit trust policy` 页面中填入如下 JSON。最后,单击 `Update policy`(需要把下面策略中的 
`<ec2_iam_role_arn>` 替换为 EC2 实例关联角色的 ARN);
 
 ![](/images/integrations/target_role_trust_policy.png)
 
-**注意: Condition部分中的ExternalId是可选的字符串配置,用于区分需要使用多个源用户assume 
同一个role的情况,如果配置了请在对应doris sql语句中填入该配置,关于ExternalId 的详细介绍,请参照[aws 
官方文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)**
+**注意:Condition 部分中的 ExternalId 是可选的字符串配置,用于区分需要使用多个源用户 assume 同一个 role 
的情况,如果配置了请在对应 doris sql 语句中填入该配置,关于 ExternalId 的详细介绍,请参照[aws 
官方文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)**
 
 ```JSON
 {
@@ -299,15 +312,15 @@ EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 }
 ```
 
-3. 在角色详情页的 `Permissions` 区域,单击 `Add permissions` 并选择 `Create inline policy`,在 
Specify permissions 步骤, 单击 JSON 页签,输入如下JSON策略配置; 最后,单击 Review policy;
+3. 在角色详情页的 `Permissions` 区域,单击 `Add permissions` 并选择 `Create inline policy`,在 
Specify permissions 步骤,单击 JSON 页签,输入如下 JSON 策略配置; 最后,单击 Review policy;
 
 ![](/images/integrations/target_role_permission2.png)
 
-S3 Bucket读策略模版,适用于只需读取和List bucket中对象的Doris功能,比如S3 Load, TVF,External Catalog等
+S3 Bucket 读策略模版,适用于只需读取和 List bucket 中对象的 Doris 功能,比如 S3 Load,TVF,External 
Catalog 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -335,11 +348,11 @@ S3 Bucket读策略模版,适用于只需读取和List bucket中对象的Doris
 }
 ```
 
-S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Doris功能,比如Export, Storage Vault, 
Resource,Repository等
+S3 Bucket 写策略模板,适用于需要往 bucket 中读取和写入对象的 Doris 功能,比如 Export,Storage 
Vault,Resource,Repository 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -372,11 +385,11 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
 }
 ```
 
-### Step4 通过`role_arn`和`external_id`字段使用Doris对应SQL功能
+#### Step4 通过`role_arn`和`external_id`字段使用 Doris 对应 SQL 功能
 
-通过上述配置步骤完成assume role需要的权限配置后,可得到一个目标账户的`role_arn`信息和`external_id` (如有),
+通过上述配置步骤完成 assume role 需要的权限配置后,可得到一个目标账户的`role_arn`信息和`external_id` (如有),
 
-接下来分别介绍如何通过`arn_role`和`external_id`字段使用Doris对应功能的sql语法, 主要关注如下两个字段:
+接下来分别介绍如何通过`arn_role`和`external_id`字段使用 Doris 对应功能的 sql 语法,主要关注如下两个字段:
 
 ```sql
 "s3.role_arn" = "<your-target-role-arn>",
@@ -384,7 +397,7 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
 ```
 
 #### S3 Load
-```SQL
+```sql
   LOAD LABEL s3_load_2022_04_01
   (
       DATA INFILE("s3://your_bucket_name/s3load_example.csv")
@@ -407,8 +420,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   );
 ```
 
-#### TVF
-```SQL
+**TVF**
+
+```sql
   SELECT * FROM S3 (
       "uri" = "s3://your_bucket/path/to/tvf_test/test.parquet",
       "format" = "parquet",
@@ -419,8 +433,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   )
 ```
 
-#### External Catalog
-```SQL
+**External Catalog**
+
+```sql
   CREATE CATALOG iceberg_catalog PROPERTIES (
       "type" = "iceberg",
       "iceberg.catalog.type" = "hadoop",
@@ -432,8 +447,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   );
 ```
 
-#### Storage Vault
-```SQL
+**Storage Vault**
+
+```sql
 CREATE STORAGE VAULT IF NOT EXISTS s3_demo_vault
 PROPERTIES (
     "type" = "S3",
@@ -448,8 +464,9 @@ PROPERTIES (
 );
 ```
 
-#### Export
-```SQL
+**Export**
+
+```sql
 EXPORT TABLE s3_test TO "s3://your_bucket/a/b/c" 
 PROPERTIES (
     "column_separator"="\\x07", 
@@ -462,8 +479,9 @@ PROPERTIES (
 )
 ```
 
-#### Repository
-```SQL
+**Repository**
+
+```sql
 CREATE REPOSITORY `s3_repo`
 WITH S3
 ON LOCATION "s3://your_bucket/s3_repo"
@@ -476,8 +494,9 @@ PROPERTIES
 );
 ```
 
-#### Resource
-```SQL
+**Resource**
+
+```sql
 CREATE RESOURCE "remote_s3"
 PROPERTIES
 (
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/auth/integrations/aws-authentication-and-authorization.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/auth/integrations/aws-authentication-and-authorization.md
index 8aea0c3f49a..9f845e97544 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/auth/integrations/aws-authentication-and-authorization.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/auth/integrations/aws-authentication-and-authorization.md
@@ -5,33 +5,33 @@
 }
 ---
 
-Doris 支持两种 AWS 认证、鉴权方式访问 AWS 服务,`IAM User`和`Assumed Role`,本文介绍如何配置这两种认证、鉴权方式的 
AWS 安全凭证并通过安全凭证使用Doris相关的功能来访问AWS的服务资源。
+Doris 支持两种 AWS 认证、鉴权方式访问 AWS 服务,`IAM User`和`Assumed Role`,本文介绍如何配置这两种认证、鉴权方式的 
AWS 安全凭证并通过安全凭证使用 Doris 相关的功能来访问 AWS 的服务资源。
 
-# 认证方式介绍
+## 认证方式介绍
 
-## IAM User 认证鉴权
+### IAM User 认证鉴权
 
-Doris 支持通过 配置`AWS IAM 
User`的方式来实现对外部数据源的访问(即`access_key`和`secret_key`密钥的方式),详细的配置步骤如下(更详细的介绍请参见 AWS 
官网文档 [IAM 
users](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)):
+Doris 支持通过 配置`AWS IAM 
User`的方式来实现对外部数据源的访问(即`access_key`和`secret_key`密钥的方式),详细的配置步骤如下 (更详细的介绍请参见 AWS 
官网文档 [IAM 
users](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)):
 
-### Step1 登录AWS控制台创建IAM User并配置IAM策略
+#### Step1 登录 AWS 控制台创建 IAM User 并配置 IAM 策略
 
 1. 登录 `AWS控制台` 选择 `Create user` 按钮
 
 ![](/images/integrations/create_iam_user.png)
 
-2. 填写好IAM user名字后,在`Set pemissions`部分选择直接附加策略
+2. 填写好 IAM user 名字后,在`Set pemissions`部分选择直接附加策略
 
 ![](/images/integrations/iam_user_attach_policy1.png)
 
-3. 在策略编辑器中填入对应的AWS资源策略,下文以访问S3 Bucket资源为例列出了读/写策略的常见模板
+3. 在策略编辑器中填入对应的 AWS 资源策略,下文以访问 S3 Bucket 资源为例列出了读/写策略的常见模板
 
 ![](/images/integrations/iam_user_attach_policy2.png)
 
-S3 Bucket读策略模版,适用于只需读取和列出bucket中对象的Doris功能,比如S3 Load, TVF,External Catalog等
+S3 Bucket 读策略模版,适用于只需读取和列出 bucket 中对象的 Doris 功能,比如 S3 Load,TVF,External 
Catalog 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -59,11 +59,11 @@ S3 Bucket读策略模版,适用于只需读取和列出bucket中对象的Doris
 }
 ```
 
-S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的Doris功能,比如Export, Storage Vault, 
Resource,Repository等
+S3 Bucket 写策略模板,适用于需要读取、列出和写入 bucket 对象的 Doris 功能,比如 Export,Storage 
Vault,Resource,Repository 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -98,16 +98,17 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
 }
 ```
 
-4. 创建IAM User成功后,创建access/secret key密钥
+4. 创建 IAM User 成功后,创建 access/secret key 密钥
 
 ![](/images/integrations/iam_user_create_ak_sk.png)
 
-### Step2 通过访问密钥和SQL语句使用Doris对应功能
+#### Step2 通过访问密钥和 SQL 语句使用 Doris 对应功能
 
-完成上述Step1中的所有配置后,可获得`access_key`和`secret_key`访问密钥,通过访问密钥可以使用Doris对应的功能,具体例子如下:
+完成上述 Step1 中的所有配置后,可获得`access_key`和`secret_key`访问密钥,通过访问密钥可以使用 Doris 
对应的功能,具体例子如下:
 
-#### S3 Load
-```SQL
+**S3 Load**
+
+```sql
   LOAD LABEL s3_load_2022_04_01
   (
       DATA INFILE("s3://your_bucket_name/s3load_example.csv")
@@ -130,8 +131,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   );
 ```
 
-#### TVF
-```SQL
+**TVF**
+
+```sql
   SELECT * FROM S3 (
       'uri' = 's3://your_bucket/path/to/tvf_test/test.parquet',
       'format' = 'parquet',
@@ -142,8 +144,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   )
 ```
 
-#### External Catalog
-```SQL
+**External Catalog**
+
+```sql
   CREATE CATALOG iceberg_catalog PROPERTIES (
       'type' = 'iceberg',
       'iceberg.catalog.type' = 'hadoop',
@@ -155,8 +158,9 @@ S3 Bucket写策略模板, 适用于需要读取、列出和写入bucket对象的
   );
 ```
 
-#### Storage Vault
-```SQL
+**Storage Vault**
+
+```sql
 CREATE STORAGE VAULT IF NOT EXISTS s3_demo_vault
 PROPERTIES (
     "type" = "S3",
@@ -171,8 +175,9 @@ PROPERTIES (
 );
 ```
 
-#### Export
-```SQL
+**Export**
+
+```sql
 EXPORT TABLE s3_test TO "s3://your_bucket/a/b/c" 
 PROPERTIES (
     "column_separator"="\\x07", 
@@ -185,8 +190,9 @@ PROPERTIES (
 )
 ```
 
-#### Repository
-```SQL
+**Repository**
+
+```sql
 CREATE REPOSITORY `s3_repo`
 WITH S3
 ON LOCATION "s3://your_bucket/s3_repo"
@@ -199,8 +205,9 @@ PROPERTIES
 );
 ```
 
-#### Resource
-```SQL
+**Resource**
+
+```sql
 CREATE RESOURCE "remote_s3"
 PROPERTIES
 (
@@ -215,45 +222,51 @@ PROPERTIES
 
 您可以在不同业务逻辑里指定不同的 IAM User 的 `access_key` 和 `secret_key`,从而实现外部数据的访问控制。
 
-## Assumed Role 认证鉴权
+### Assumed Role 认证鉴权
 
-Assumed Role 支持通过担任 AWS IAM Role 来实现对外部数据源的访问认证和鉴权(详细的介绍请参见 AWS 官网文档 
[代入角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)),下图列出了Assumed
 Role所需要配置的简要流程:
+Assumed Role 支持通过担任 AWS IAM Role 来实现对外部数据源的访问认证和鉴权 (详细的介绍请参见 AWS 官网文档 
[代入角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html)),下图列出了
 Assumed Role 所需要配置的简要流程:
 
 ![](/images/integrations/assumed_role_flow.png)
 
-名词介绍:
+名词介绍:
 
-`源账户(Source Account)`​: 发起 Assume Role 的 AWS 账户(本例中是Doris FE/BE EC2机器所属账户);
+`源账户(Source Account)`: 发起 Assume Role 的 AWS 账户 (本例中是 Doris FE/BE EC2 机器所属账户);
 
-`目标账户(Target Account)`​: 拥有目标 S3 Bucket 的 AWS 账户;
+`目标账户(Target Account)`: 拥有目标 S3 Bucket 的 AWS 账户;
 
-`ec2_role`:  源账户创建的Role,并且需要绑定到每一个部署Doris FE/BE 部署EC2机器上;
+`ec2_role`:  源账户创建的 Role,并且需要绑定到每一个部署 Doris FE/BE 部署 EC2 机器上;
 
-`bucket_role`: 目标账户创建的Role,并且需要关联目标bucket权限;
+`bucket_role`: 目标账户创建的 Role,并且需要关联目标 bucket 权限;
 
 **注意:&#x20;**
 
-1. **源账户和目标账户可以是同一个AWS账户;**
-2. **请确保所有Doris FE/BE 部署所在的 EC2机器都绑定到了`ec_role`上,尤其是扩容的时候。**
+1. **源账户和目标账户可以是同一个 AWS 账户;**
+2. **请确保所有 Doris FE/BE 部署所在的 EC2 机器都绑定到了`ec_role`上,尤其是扩容的时候。**
+
+操作演示 Demo 如下:
+
+<a 
href="https://www.bilibili.com/video/BV1U3uezjEPW/?vd_source=20479f0462e74fcf98f1df731639610f";>
+  <img src="/zh-CN/images/iam-role-doris-demo.png" alt="AWS IAM Role" />
+</a>
 
 更详细的配置步骤如下:
 
-### Step1 准备工作
+#### Step1 准备工作
 
-1. 请确保源账户创建了一个`ec2_role`,Doris FE/BE 部署的EC2机器都绑定到了新创建的`ec2_role`;
+1. 请确保源账户创建了一个`ec2_role`,Doris FE/BE 部署的 EC2 机器都绑定到了新创建的`ec2_role`;
 
-2. 请确保目标账户创建了一个`bucket_role`和对应的bucket;
+2. 请确保目标账户创建了一个`bucket_role`和对应的 bucket;
 
-EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
+EC2 机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 
 ![](/images/integrations/ec2_instance.png)
 
-### Step2 配置源账户IAM角色( EC2 实例关联角色) 权限策略
+#### Step2 配置源账户 IAM 角色 ( EC2 实例关联角色) 权限策略
 
 1. 登录 [AWS IAM 
控制台](https://us-east-1.console.aws.amazon.com/iamv2/home#/home),在左侧导航栏选择 
`Access management > Roles`;
 2. 找到 `EC2` 实例关联角色,单击角色名称;
-3. 在角色详情页的 `Permissions`  区域, 单击 `Add permissions` 并选择 `Create inline policy`;
-4. 在 `Specify permissions` 步骤, 单击 JSON 页签,然后填入如下策略,最后,单击 `Review policy`;
+3. 在角色详情页的 `Permissions`  区域,单击 `Add permissions` 并选择 `Create inline policy`;
+4. 在 `Specify permissions` 步骤,单击 JSON 页签,然后填入如下策略,最后,单击 `Review policy`;
 
 ![](/images/integrations/source_role_permission.png)
 
@@ -270,14 +283,14 @@ EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 }
 ```
 
-### Step3 配置目标账户IAM角色信任策略和权限策略
+#### Step3 配置目标账户 IAM 角色信任策略和权限策略
 
 1. 登录 [AWS IAM 
控制台](https://us-east-1.console.aws.amazon.com/iamv2/home#/home),在左侧导航栏选择 
`Access management > Roles` 找到 `Assumed Target Role`,单击角色名称 在角色详情页上;
-2. 单击 `Trust relationships` 页签,然后在 `Trust relationships` 页签上单击 `Edit trust 
policy`。在 `Edit trust policy` 页面中填入如下JSON。最后,单击 `Update policy`(需要把下面策略中的 
`<ec2_iam_role_arn>` 替换为 EC2 实例关联角色的 ARN);
+2. 单击 `Trust relationships` 页签,然后在 `Trust relationships` 页签上单击 `Edit trust 
policy`。在 `Edit trust policy` 页面中填入如下 JSON。最后,单击 `Update policy`(需要把下面策略中的 
`<ec2_iam_role_arn>` 替换为 EC2 实例关联角色的 ARN);
 
 ![](/images/integrations/target_role_trust_policy.png)
 
-**注意: Condition部分中的ExternalId是可选的字符串配置,用于区分需要使用多个源用户assume 
同一个role的情况,如果配置了请在对应doris sql语句中填入该配置,关于ExternalId 的详细介绍,请参照[aws 
官方文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)**
+**注意:Condition 部分中的 ExternalId 是可选的字符串配置,用于区分需要使用多个源用户 assume 同一个 role 
的情况,如果配置了请在对应 doris sql 语句中填入该配置,关于 ExternalId 的详细介绍,请参照[aws 
官方文档](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html)**
 
 ```JSON
 {
@@ -299,15 +312,15 @@ EC2机器绑定`ec2_role`成功后, `role_arn`查询如下图所示:
 }
 ```
 
-3. 在角色详情页的 `Permissions` 区域,单击 `Add permissions` 并选择 `Create inline policy`,在 
Specify permissions 步骤, 单击 JSON 页签,输入如下JSON策略配置; 最后,单击 Review policy;
+3. 在角色详情页的 `Permissions` 区域,单击 `Add permissions` 并选择 `Create inline policy`,在 
Specify permissions 步骤,单击 JSON 页签,输入如下 JSON 策略配置; 最后,单击 Review policy;
 
 ![](/images/integrations/target_role_permission2.png)
 
-S3 Bucket读策略模版,适用于只需读取和List bucket中对象的Doris功能,比如S3 Load, TVF,External Catalog等
+S3 Bucket 读策略模版,适用于只需读取和 List bucket 中对象的 Doris 功能,比如 S3 Load,TVF,External 
Catalog 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -335,11 +348,11 @@ S3 Bucket读策略模版,适用于只需读取和List bucket中对象的Doris
 }
 ```
 
-S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Doris功能,比如Export, Storage Vault, 
Resource,Repository等
+S3 Bucket 写策略模板,适用于需要往 bucket 中读取和写入对象的 Doris 功能,比如 Export,Storage 
Vault,Resource,Repository 等
 
 **注意:&#x20;**
 
-1. **替换对应的bucket name和prefix路径**
+1. **替换对应的 bucket name 和 prefix 路径**
 
 2. **不要添加多余的“/”分割符**
 
@@ -372,11 +385,11 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
 }
 ```
 
-### Step4 通过`role_arn`和`external_id`字段使用Doris对应SQL功能
+#### Step4 通过`role_arn`和`external_id`字段使用 Doris 对应 SQL 功能
 
-通过上述配置步骤完成assume role需要的权限配置后,可得到一个目标账户的`role_arn`信息和`external_id` (如有),
+通过上述配置步骤完成 assume role 需要的权限配置后,可得到一个目标账户的`role_arn`信息和`external_id` (如有),
 
-接下来分别介绍如何通过`arn_role`和`external_id`字段使用Doris对应功能的sql语法, 主要关注如下两个字段:
+接下来分别介绍如何通过`arn_role`和`external_id`字段使用 Doris 对应功能的 sql 语法,主要关注如下两个字段:
 
 ```sql
 "s3.role_arn" = "<your-target-role-arn>",
@@ -384,7 +397,7 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
 ```
 
 #### S3 Load
-```SQL
+```sql
   LOAD LABEL s3_load_2022_04_01
   (
       DATA INFILE("s3://your_bucket_name/s3load_example.csv")
@@ -407,8 +420,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   );
 ```
 
-#### TVF
-```SQL
+**TVF**
+
+```sql
   SELECT * FROM S3 (
       "uri" = "s3://your_bucket/path/to/tvf_test/test.parquet",
       "format" = "parquet",
@@ -419,8 +433,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   )
 ```
 
-#### External Catalog
-```SQL
+**External Catalog**
+
+```sql
   CREATE CATALOG iceberg_catalog PROPERTIES (
       "type" = "iceberg",
       "iceberg.catalog.type" = "hadoop",
@@ -432,8 +447,9 @@ S3 Bucket写策略模板, 适用于需要往bucket中读取和写入对象的Dor
   );
 ```
 
-#### Storage Vault
-```SQL
+**Storage Vault**
+
+```sql
 CREATE STORAGE VAULT IF NOT EXISTS s3_demo_vault
 PROPERTIES (
     "type" = "S3",
@@ -448,8 +464,9 @@ PROPERTIES (
 );
 ```
 
-#### Export
-```SQL
+**Export**
+
+```sql
 EXPORT TABLE s3_test TO "s3://your_bucket/a/b/c" 
 PROPERTIES (
     "column_separator"="\\x07", 
@@ -462,8 +479,9 @@ PROPERTIES (
 )
 ```
 
-#### Repository
-```SQL
+**Repository**
+
+```sql
 CREATE REPOSITORY `s3_repo`
 WITH S3
 ON LOCATION "s3://your_bucket/s3_repo"
@@ -476,8 +494,9 @@ PROPERTIES
 );
 ```
 
-#### Resource
-```SQL
+**Resource**
+
+```sql
 CREATE RESOURCE "remote_s3"
 PROPERTIES
 (
@@ -488,4 +507,3 @@ PROPERTIES
     "s3.external_id" = "<your-external-id>"
 );
 ```
-
diff --git a/static/images/iam-role-doris-demo.png 
b/static/images/iam-role-doris-demo.png
new file mode 100644
index 00000000000..d077e3837dd
Binary files /dev/null and b/static/images/iam-role-doris-demo.png differ


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to