簡體   English   中英

如何授予對 1000 (100,000) 個遠程部署設備(客戶站點服務器)的訪問權限以將日志上傳到 aws kinesis?

[英]How do I give access to 1000's (100,000) of remote deployed devices (customer site servers) to upload logs to aws kinesis?

有近 100,000 台設備正在生成日志(每天總計 10-20 TB),我希望它們直接上傳到 kinesis。 如何控制訪問? IAM 只允許我為每個賬戶創建最多 1000 個用戶(我知道我們可以請求增加用戶限制),但想知道有什么更好的方法來做到這一點。

一個要求是,我希望能夠授予/撤銷對每台設備的 kinesis 訪問權限。

由於您已經擁有 IoT Core,我想我會首先嘗試利用它進行日志記錄。 這將使您能夠利用內置於 IoT 核心的基於證書的授權,而且我知道您可以將 IoT 主題掛接到 Kinesis stream 中。

如果您覺得這將是太大的容量(並且基於消息和規則的數量可能太昂貴),那么我會為我的設備提供臨時安全憑證,讓它們寫入 Kinesis 而不是其他任何東西。

您將在 Lambda 或 ECS 中使用計划作業,在每個設備的基礎上生成這些憑據(據我所知,每個帳戶的憑據數量沒有配額)。 這項工作將遍歷您的設備並為每個設備生成一組憑據。 然后,它將通過 IoT Core 將這些憑據發布到設備,或更新設備影子。

然后,設備可以使用這些憑據創建 Kinesis 客戶端來發布日志消息。 您的客戶端在收到新憑據時必須創建一個新客戶端。

作為替代方案,如果您的設備在內部維護日志文件,您可以使用類似的方法來觸發將這些文件上傳到 S3。 在這種情況下,計划任務不會發布臨時憑證,而是為每個設備發布預簽名的 URL 它將 URL 發布到設備,設備將使用它來上傳其累積的日志。 然后你需要對 S3 上的文件做一些事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM