ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data...

7
ECV-SoP-台北市政府 Open Data 專案 如何建立 AWS S3 Cross Account 28 th May, 2018 Page 1 ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD. ECV-SoP-台北市政府Open Data專案 - 如何取得北市府 Open Data 資料集 May, 30, 2018 Version 2.0

Transcript of ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data...

Page 1: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 1

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

ECV-SoP-台北市政府Open Data專案

- 如何取得北市府 Open Data 資料集

May, 30, 2018

Version 2.0

Page 2: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 2

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

此 SoP 是基於台北市政府 Open Data 專案,為教學如何透過 Cloudfront 組合下

載連結,以及透過 AWS S3 Cross Account 跨帳號存取功能來取得台北市政府的

S3 資料夾的數據

方式 1. 如何透過 Cloudfront 組合下載連結

此步驟由資料用戶(民眾或大專院校)進行操作: 1) 資料用戶開啟下面網頁連結:https://taipeicity.github.io/data_taipei/

2) 您將進入「北市府 X 亞馬遜」資料集列表網站,目前共有 18 個資料即可供民眾下載使用:

資料集 更新頻率 編號 資料集使用說明

臺北捷運列車到站資訊 30 秒 D0001 介接說明

臺北市今日施工資訊 10 分 D0002 介接說明

臺北市水質監測資訊 15 分 D0003 介接說明

資訊可變標誌(CMS)顯示內容 5 分 D0004 介接說明

車輛偵測器(VD)資料 5 分 D0005 介接說明

道路速率 5 分 D0006 介接說明

YouBike 臺北市公共自行車即時資訊 1 分 D0007 介接說明

空氣盒子即時量測資料 1 分 D0008 介接說明

臺北市空氣品質即時污染指標 60 分 D0009 介接說明

臺北市食材登錄平台-TODV_學校專區_幼兒園_菜色 1 天 D0010 介接說明

臺北市食材登錄平台-TODV_學校專區_高中職以下_菜色 1 天 D0011 介接說明

剩餘停車位數 5 分 D0012 介接說明

臺北市環境輻射監測 5 分 D0013 介接說明

某時段的翡翠水庫資料 10 分 D0014 介接說明

最新災害專案的災情資料 30 分 D0015 介接說明

定時車機資訊 BUSDATA 5 分 D0016 介接說明

定點車機資訊 BUSEVENT 5 分 D0017 介接說明

公車資訊預估到站時間 30 秒 D0018 介接說明

Page 3: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 3

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

3) 選擇需要取用的資料集後,點選上方「資料集使用說明」列的「介接說明」,您即可進入該資料集的下載

步驟網頁,已「臺北捷運列車到站資訊」為例,可發現下面步驟,即可按步驟組合出您需求的資料集:

注意事項:

a. 若您從「北市府 X 亞馬遜」資料集列表網站複製網頁中的連結到 Word 等編輯軟體做修改,請

用「純文字貼上」的方式,以避免有格式問題,並請確定是否有“空格“包含在您下載的網址

中。

b. 日期部分,月份若為個位數的月份(一到九月),則請在數字前加一位數”0”,若是三月,則

是“03”,範例如下:

http://d1iq6wylc7zf4q.cloudfront.net/D0001/2018/03/18/D0001-20180318.zip

1. by 日下載 (規則 D0001 為資料集項目、2018 為年、3 為月、18 為日, D0001-20171118.zip 為

下載打包檔)

http://d1iq6wylc7zf4q.cloudfront.net/D0001/2018/03/18/D0001-20180318.zip

2. by 月下載 (規則 D0001 為資料集項目、2018 為年、03 為月,D0001- 201803.zip 為下載打包檔<-

-不要下日期區間,即可下載整月份資料)

http://d1iq6wylc7zf4q.cloudfront.net/D0001/2018/03/D0001-201803.zip

Page 4: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 4

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

方式 2. 使用 AWS S3 Cross Account 跨帳號存取

此步驟由資料用戶(民眾或大專院校)進行操作: Step 1. 資料用戶提供 AWS 「Account ID」及「Account Email」予北市府進行資料分享權限設定

1) 資料用戶以「Root」權限登入 AWS,並進入右上角「My Account」

2) 進入「My Account」後複製 AWS「 Account ID」,保留此 ID 後,點選「Edit」進入下一頁面

3) 此 Email 即為您的 AWS Account Email,請連同上一步的「Account ID」提供予北市府相關工作

人員進行相關設定

此步驟由台北市正府 AWS 環境管理人員進行操作: Step 2. 北市府相關人員在 AWS 環境中進行 S3 Bucket 新增“分享檔案權限”,若資料用戶需要使用多個

S3 Bucket 的內容,則必須針對個別的 S3 Bucket 設置下面步驟的分享權限

1) 資料用戶登入 AWS,進入 S3 頁面

Page 5: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 5

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

2) 可看到您的 S3 已建立的 Bucket 資源,下面將以「tcg-data-parquet」bucket 為講解範例,請點

選「tcg-data-parquet」bucket

3) 進入資訊頁面後,點選上方「Permissions」標籤的「Access Control List」,可看到分為上下兩

部分,「Access for your AWS accounts」為您可使用其他人 AWS 帳戶的 S3 Bucket 的 Cross

Account 權限,「Access for other AWS accounts」為其他人可使用您 AWS 帳戶的 S3 Bucket

的 Cross Account 權限。

在「Access for other AWS accounts」請點選「+Add Account」以新增該 S3 Bucket 的分享權

4) 輸入資料用戶提供的 Email(由 Step 1 提供),並勾選「List Objects」及「Read bucket

permissions」,點選「Save」保存變更

Page 6: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 6

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

5) 因為安全性的目的(Root Account),新增的分享帳號將會以加密方式呈現,此時可看到新分享權

限已新增完成

6) 回到上方,點選「Bucket Policy」,在"Statement"的描述最後,新增下面權限後點選

「Save」,新增內容請見下方表格說明:

格式: 範例:

Page 7: ECV-SoP-台北市政府Open Data專案 · 此SoP 是基於台北市政府Open Data 專案,為教學如何透過Cloudfront 組合下 載連結,以及透過AWS S3 Cross Account

ECV-SoP-台北市政府 Open Data 專案

如何建立 AWS S3 Cross Account

28th May, 2018 Page 7

ECLOUDVALLEY TECHNOLOGY LTD CONFIDENTIAL. THE INFORMATION IN THIS DOCUMENT MAY NOT BE

DISCLOSED WITHOUT THE PRIOR WRITTEN CONSENT OF ECLOUDVALLEY TECHNOLOGY LTD.

{

"Sid": "可表示此權限的任意名稱(英文及數字)",

"Effect": "Allow", "Principal": {

"AWS": "arn:aws:iam::資料用戶的 Root Account ID:root"

}, "Action": "s3:GetObject", "Resource": [

"arn:aws:s3:::被分享的 S3 Bucket 名稱",

"arn:aws:s3:::被分享的 S3 Bucket 名稱/*"

]

}

{

"Sid": "opendata bucket", "Effect": "Allow", "Principal": {

"AWS": "arn:aws:iam:: 094455625708:root" }, "Action": "s3:GetObject",

"Resource": [ "arn:aws:s3:::tcg-data-parquet", "arn:aws:s3::: tcg-data-parquet/*"

] }

7) 此時,使用資料用戶(民眾或大專院校)的 AWS 環境所開的 EC2 已可正確列出北市府的 S3 Bucket

資料