客戶案例/金融服務

2019
Coinbase 標誌

Coinbase 利用 AWS Step Functions 在幾秒鐘內安全地部署到 AWS

為了成為加密貨幣經濟值得信賴、安全和合法的中心,Coinbase 致力於在安全、合規、技術、客戶支援、設計等方面達到世界一流水平。 

97%

部署成功率從 90% 提高到了 97%。

幾秒

將新增 AWS 帳戶所需的時間從數天縮短至幾秒。

已解決工單

已解決工單數量大幅增加。

概觀

加密貨幣提供了去中心化的資金存取方式,並實現了類似於現金的交易,除了接受資金的一方,否則任何人都無法撤消。這些特徵是推動加密貨幣日益普及的部分原因。不僅守法的投資者關注加密貨幣,惡意行為者也開始打起了加密貨幣的主意,隨著加密貨幣的使用日趨廣泛,貨幣盜竊的動機和機會勢必增加。FBI 的網際網路犯罪投訴中心 (IC3) 的加密貨幣盜竊報告指出在 2018 年有價值總計 1.82 億美元的加密貨幣被竊,是 2017 年的 212%,而這可能僅佔全球實際加密貨幣欺詐的一小部分。

Coinbase 高級基礎設施工程師 Graham Jenson 表示:「駭入加密貨幣交易所成為全球駭客最大的競技遊戲」。Coinbase 是一個數位貨幣錢包和平台,在全球擁有 3,000 萬客戶,交易總額達 2,200 億美元。「Coinbase 作為最大的交易所之一,也是最大的被攻擊目標之一。」

Stock market digital graph chart on LED display concept. A large display of daily stock market price and quotation. Indicator financial forex trade education background.

為了成為加密貨幣經濟值得信賴、安全和合法的中心,Coinbase 致力於在安全、合規、技術、客戶支援、設計等方面達到世界一流水平。這就是 Coinbase 自 2015 年以來一直將 Amazon Web Services (AWS) 用作其主要基礎設施供應商的原因,也是 Coinbase 最近採用更多 AWS 技術以改進其軟體部署流程的原因。

機會

為了保護客戶免受攻擊,Coinbase 工程師必須能夠快速、可靠和安全地為公司的所有系統部署更新和新功能,其中某些軟體部署需要 20 個小時或更長時間才能完成。為了簡化和增強這些流程,Coinbase 使用 AWS Step Functions 和 AWS Lambda 建置了一個通用的可重複使用框架,用於臨時的部署器組合。(AWS Lambda 是一種無伺服器平台,可執行程式碼以回應事件,而 AWS Step Functions 可將多個 AWS 服務協調到無伺服器工作流程中。)

「藉助 AWS Step Functions 和 AWS Lambda,我們的關鍵任務部署成功率從 90% 提高到了 97%,」 Jenson 說道。

kr_quotemark

「我們已經看到故障工單大幅減少。這得益於 AWS Step Functions 給我們的工程師帶來了可見性。」

Graham Jenson
Coinbase 資深基礎設施工程師

解決方案

在尋找進一步加強 Coinbase 安全的方法時,Jenson 發現了改善公司自動部署管道的機會。Jenson 說:「我們有多個部署器,每個部署器都有不同的界面和複雜性。」「我想要一個通用框架,該框架將使我們能夠快速建置可以驗證使用者輸入、將程式碼安全發佈到 AWS 且不會妨礙工程師的部署器。」

在研究解決方案的過程中,Jenson 了解到 AWS Step Functions。Jenson 說:「查閱文件後,我意識到 Step Functions 正是我所需要的。Step Functions 可以維持狀態長達一年,具有高度可擴展性,而且可以更輕鬆地在描述特定錯誤後自動處理和重試。」

透過選擇使用以 AWS Lambda 和 AWS Step Functions 為基礎的架構建置新類別的部署器,並使用 AWS Identity and Access Management (AWS IAM) 和 Amazon Simple Storage Service (Amazon S3),讓 Coinbase 能夠快速實作,且僅需簡短的初始學習過程。Jenson 團隊建立的第一個部署器是名為 Odin 的開放原始碼 AWS 部署器,它描述一個專案版本,並使用 Amazon EC2 Auto Scaling 群組將其安全可靠地啟動到 AWS 中。

「從構思到可行的實作,再到將 Odin 遷移到解決方案上,整個過程從構思到生產只花了六個月的時間。」Jenson 說,「但是由於我們可以重複使用建置 Odin 時使用的程式碼和框架,因此我們僅花了幾週的時間便將另外兩個部署器投入生產。從現在開始,這個過程會變得更快。」

結果

新方法大大降低了 Coinbase 架構的複雜性,從而提高了 Jenson 團隊對架構的可見性。

「我們以前的部署器具有不同的 Web 勾點、回呼、Amazon S3 配置、儲存貯體和 AWS IAM 角色,並使用了不同的通訊和輪詢方法。很難獲得我們需要的可見性。」Jenson 說。「現在,我們的所有部署器都以相同的 AWS Lambda 和 AWS Step Functions 基礎為根基,我們將以相同的方式進行操作和與之互動。我們可以監控步驟函數中的資料流,識別特定路徑上的故障,並採取措施進行修正。」

這種簡便性加快了新增 AWS 帳戶的過程,並提高了安全性。「透過使用 AWS Lambda 和 AWS IAM 假定角色,我們可以啟動具有單個 AWS IAM 角色的 AWS 帳戶,而不是啟動具有單獨組態的整個服務,」 Jenson 說。「借助 AWS Lambda 和 AWS IAM,我們將新增 AWS 帳戶所需的時間從幾天縮短到了幾秒鐘。」

新的解決方案還簡化了可稽核性。Jenson 說:「我們可以透過一個步驟函數啟用多個帳戶,這使我們對所有部署可以使用同一個稽核追蹤。」「這使我們很容易了解所有帳戶中發生的狀況,並使我們能夠以高安全性啟用新帳戶,而不必重新實作稽核追蹤。」

透過讓工程師能夠獨立克服障礙,該解決方案還減少了對基礎設施團隊的需求。Jenson 說:「我們已經看到部署失敗的故障工單大幅減少。」「這是由於 AWS Step Functions 給我們的工程師提供了可視性,使他們能夠診斷和解決自己的問題。」

憑藉這些內部技術優勢,我們能夠提供更高的安全性,並更快對客戶請求做出回應。Jenson 說:「借助建置在 AWS Step Functions 和 AWS Lambda 之上的部署器,我們的工程師可以安全地將程式碼移入生產環境。」「結果是,我們可以更頻繁地發佈新功能、更快地回應安全威脅,並更輕鬆地實現我們的 SLA。這帶來了更好、更安全的客戶體驗。」

關於 Coinbase

Coinbase 是位於舊金山的數位貨幣錢包和平台。該公司擁有 3,000 萬客戶,並支援超過 2,200 億 USD 的比特幣、以太坊和萊特幣等數位貨幣交易。

使用的 AWS 服務

Amazon S3

Amazon Simple Storage Service (Amazon S3) 是一種物件儲存服務,提供領先業界的可擴展性、資料可用性、安全性及效能。

進一步了解 »

AWS Step Functions

AWS Step Functions 是一種視覺化的工作流程服務,有助於開發人員使用 AWS 服務建置分散式應用程式、自動化流程、協同運作微型服務,以及建立資料和機器學習 (ML) 管道。

進一步了解 »

AWS Lambda

AWS Lambda 是一種運算服務,可執行程式碼以回應事件並自動管理運算資源,使其成為將想法轉化為現代生產無伺服器應用程式最快捷的方式。

進一步了解 »

AWS Identity and Access Management

藉助 AWS Identity and Access Management (IAM),您可以指定誰或者哪些服務可以存取 AWS 中的服務和資源,集中管理精細的許可,並分析存取權以最佳化整個 AWS 的許可。

進一步了解 »

更多金融服務客戶案例

找不到任何項目 

1

開始使用

各行各業各種規模的組織每天都在使用 AWS 來變革其業務和履行其使命。聯絡我們的專家,立即開始您的專屬 AWS 雲端之旅。