Meow~
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Versions and GitHub Sync Note Insights Sharing URL Help
Menu
Options
Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       owned this note    owned this note      
    Published Linked with GitHub
    Subscribed
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    Subscribe
    雲端服務安全 === ###### tags: `courses meow` :::spoiler click to open TOC [TOC] ::: :::info #### syllabus - 課前前測 - 課後後側 - 課前課後測會出現在期中末考 ::: # Introduction of Cloud Computing ? - What is "Cloud"? - 將資源、設備存放在網路上的地方。 - 在==網路==上進行資源、軟體和資訊共享並以此進行運算 - 雲端計算廣義的特徵 - 基於網路 - 可擴展的(大規模) - 雲端運算的規模要可擴展到大規模使用 - 可能需要大量的頻寬及儲存空間 - 動態的 - 雲端服務需要可動態進行資源分配的能力 - 隨時可以進行連接及服務 - 需要可以靈活地進行部屬 - 可虛擬化的(不一定需要) - 可以藉由虛擬化技術提供使用者設備及服務 ## Concept of Cloud Conputing ![](https://i.imgur.com/RjtJoxp.png =550x) ### 客戶端 - 裝置 - 透過裝置進行連接並請求服務,以及進行資源、資訊的傳遞共享 - 個資 - 理論上個資應該放在用戶端自己保存 - 但實務上為了提供雲端計算的服務,雲端也會保存用戶個資 - e.g. google帳號儲存用戶喜好、uber儲存信用卡資料作為驗證 - 大家個資的集合就可以變Public Data - e.g. Line的聊天紀錄、Youtube的熱門影片 ### 雲端(服務提供端) - Public Data - 個資的集合 - 大家的個資經過資源處理、整合便可以成為Public Dada - 所以雲端服務個資很重要 - 進行雲端服務的資源 - e.g. Server主機 ## 雲端服務的安全 - 雲端服務有我們的個資,那沒有經過允許可以使用我們的資料嗎? - 可以的話,又可以運用到什麼程度呢? - 個資儲存的方式和加密是否安全 - 儲存你密碼明文的笨笨網站 - 系統安全 - 是否有程式設計上的漏洞,可能被攻擊的疑慮等等 - e.g. log4j的風暴 - 網路、系統的安全性可能是要付出代價的 > 沒有永遠安全的系統,只有更安全的系統 ## 雲端的崛起 - 過去的電腦是作為計算國家型大型運算資料用的 - 到了工業發達,製造能力技術的發達 - 電腦開始普及 - 電腦的體積和能量減低 - 網路的發明 - 由於大量普通人開始可以使用電腦且網路普及 - 雲端開始漸漸發展 - 開始有人將網頁和Database結合,並開始發展動態網頁 - 雲端漸漸成熟 ## 現在的雲端運算 - 大量的資料處理 - 可能不需要很快的時間,但是會有很大量的運算且要運算出可用的結果 - 即時互動的資料運算 - 需要極快(及時)的運算,運算量較小 - 可能會同時處理較多筆運算(? ## So, What is Cloud Computing? - 一個對資源、運算進行整合和分配的架構 - 將運算平行、分散化 - 通常有較大的擴展性 - 過去被認為是網格運算 - 但現在跟未來不只 # Parallel Computing > 雲端運算,本質就是一種平行運算 > 一台電腦不夠算,那一台兩台十台百台呢? - 雲端平行運算就好比CPU的平行運算 - ==同時間==進行運算 - 當運算式==可以切割的==,便可以將大問題切成小問題,進行平行運算 - 切成小的大家**同時**運算 - 平行運算建立在記憶體共享的基礎上 - 優點 - 提高效能 - High performance - 成本相對較為經濟 > 費林分類法(Flynn's Taxonomy),是一種高效能計算機的分類方式。1972年費林(Michael J. Flynn)根據資訊流(information stream)可分成指令 (Instruction)和資料(Data)兩種。據此又可分成四種計算機類型: > [source: wikipedia](https://en.wikipedia.org/wiki/Flynn%27s_taxonomy) | | Single Instruction | Multiple Instructions | | -------- | -------- | -------- | | Single Data | SISD | MISD | | Multiple Data | SIMD | MIMD| - SISD - 單一指令處理單一數據 - 在同一個時序內一個指令僅能處理一個數據 - 比較傳統的方法 - 不能做到真正的平行運算 - 但可以透過pipeline以及快速切換模擬出平行處理的效果 - SIMD - 單一指令處理多數據 - 同一個指令可以處理大量不同數據 - 常見用於數位訊號處理、圖形處理或多媒體處理等等 - MISD - 多指令處理單一數據 - 這感覺比較像是純理論的,畢竟以技術層面來講感覺MIMD更為高效 - 沒有實際看過這種處理方式 - MIMD - 多指令處理多數據 - 現今大部分處理方式應該都是這種 ## Degrees of Parallelism - Bit-level parallelism(BLP) - 4-bit,8-bit,...,64bit - 可以同時運算的bit數 - 記憶體儲存數字的最大bit數 - 可以儲存的位元數增多,並行度自然增加 - Instruction-level parallelism(ISP) - 同時可以處理的指令數量上升 - Data-level parallelism(DLP) - 同時可以處理的數據增多 - SIMD - Task-level parallelism(TLP) - MISD、MIMD - Thread的增加( - ? - Job-level parallelism(JLP) - TLP的集合 # Distributed computing - 分散式運算假設網路連線的代價是較大的 - 分散式任務的獨立性較高,一個任務的錯誤或是意外,對其他任務的影響較小 - 即使其他任務的回傳值未抵達,依舊可以繼續執行任務 - 同一個任務可能會分配給多個參與者計算,因此允許答案錯誤 - 通常很多答案上傳到伺服器以後,可能會對偏差值較大的答案進行驗證 - 分散式運算常用於處理尋找式問題,也就是以窮舉尋找問題的答案 :::info ## Parallelism Computing vs Distributed Computing - Parallelism Computing - 通常會有共享記憶體 - 任務通常彼此相關 - 對網路、實時回應的要求較高 - 一個錯誤答案對整體的影響較大 - 大部分會用MPI、OpenMP編寫 - Distributed Computing - 任務通常較為獨立 - 對網路的要求較高 - 答案錯誤、未回傳對於整體的影響較小 - 大部分用C++編寫(or Java) ::: # Towards Commodity Computing - 從連結多台電腦共享運算資源去處理一個問題,到切割大問題成小問題,分配給大家算 - 從使用單一特殊強大的電腦運算,到用許多花費較少的電腦進行聯合運算 # Cluster Computing - 叢集計算是一種平行運算和分散運算的綜合 - 每個單獨的電腦為一個節點(Node) - 多節點通常透過LAN進行連線 - 價校比通常比單一一台超級電腦好很多 # Grid Computing - 透過將工作分配給多個電腦執行,是有很高效的運算處理能力的。 - 網格計算目標在於透過連結多台運算單元,解決一個大到超級電腦也難以解決的問題,同時保留靈活處理小問題的能力。 - 通常使用網際網路進行連線,參與者也並非固定,是可以動態變化的 - 不同的作業系統、不同的環境,需要的架構也不相同,要直接將所有參與者的資源共享再一起是困難的 - Virtual Organization(VO)虛擬組織 - 決定哪些資源要被共享 - 哪些人可以共享 - 資源共享的方法 - Actual Organization - 一個網格運算網路的實際架構通常由一或多個VO所組成,彼此資源部分(or全部)共享 - 可能會不同的VO負責不同工作 - e.g. 一個VO負責決定誰可以參與資源共享,一個VO決定如何共享資源 :::info # Cluster Computing vs Grid Computing - Cluster Computer - 通常透過LAN進行連線 - 因此通常參與者的實際地理位置不會差距過遠 - 參與者通常是固定的(事先決定) - 參與人數有上限 - Grid Computing - 通常透過網易網路進行連線 - 參與者可以來自四面八方 - 參與者是可以動態變化的 - 參與人數通常會盡可能不要有上限 ::: # Volunteer computing - 不一定可靠 - 不一定有回覆 - 一定要備份,多發幾份看誰有回覆 - 著名計畫 - SETI - 搜尋外星人計畫 - Fold@home - 疫苗RNA結果預測 - milkyWay@home - 外太空、物理的運算預測模型 # Desktop Grid Computing - 一樣是Grid Computing,但是用Volunteer computing的架構,可是有一個主要控管主機進行任務發派 - 較為穩定且可靠 # NIST的標準 ## Types of Cloud Services - Cloud Software as a Service(SaaS) - 亦稱為即需即用軟體,提供軟體的服務,直接經過要求即可使用 - 通常需要付月費或是訂閱的軟體皆屬於SaaS - e.g. Gmail - Cloud Platform as a Service(PaaS) - 介於SaaS和PaaS之間,提供運算平台和執行環境讓使用者延伸運用 - e.g. FB 某部分算是PaaS - Cloud Infrastructure as a Service(IaaS) - 提供從作業系統到基礎運算資源給使用者使用 - 使用者需要自行規劃資源的分配運用 - e.g. VM - Instruction Capability才有Compute Service - Compute Service指的是進行運算scality的能力 - 只有Compute service可以提供CPU進行 - Software跟platform的運算模式已固定 ![](https://i.imgur.com/7m6J5DR.png =800x) :::info :::spoiler click to open the test(2/21) ### 2/21 - 下列何者不是「Cloud Capabilities Types」的正確敘述? - [x] Infrastructure Capabilities Type包含Infrastructure as a Service, Network as a Service, Data Storage as a Service, Communication as a Service - Platform Capabilities Type包含Platform as a Service, Network as a Service, Data Storage as a Service, Communication as a Service - Application Capabilities Type包含Software as a Service, Network as a Service, Data Storage as a Service, Communication as a Service - 我不清楚 - 解析: - 雲端計算服務皆會提供網路及資料儲存的功能 - IaaS未提供溝通功能,需要使用者自行去處理架設 - IaaS會提供自行規劃運算及基礎設備的功能,是PaaS和SaaS未提供的 ::: # ISO/IEC 17788 Definition - 給大家一個模板,讓大家要運行雲端服務時,可以知道有哪些服務要提供、哪些事情要遵守 - 較新的定義 - 雖然比較新,但是卻是比較少被採用的。 - 分類更細 - 有時NIST的定義很難完美分類現今的雲端服務 - e.g.facebook既是SaaS,卻也同時提供人在上面開發軟體,亦屬於PaaS - 將NIST的分類改為雲端服務的特性 - 意即,只要提供IaaS所需要提供的服務,便符合IaaS的特性 - 可以有復數特性,甚至可以橫跨三種服務,即包含三種特性 - 雖然按照ISO/IEC的方式較可以完美處理現實的雲端分類,但還是習慣盡量以NIST為主。 - e.g.即使facebook同時有IaaS跟SaaS,還是看他比較符合SaaS所以分類為SaaS - 以下四個何者算是Cloud Service? > 自己判斷,我不回答,也許會出現在考題[name=教授] - 憤怒鳥 - 水果忍者 - GPS路況查詢 - 拍照同時回傳地點資訊 # Cloud Service Security - 使用者的資訊如何被保護 - 使用者如何知道自己的資料是安全的 - CCRA (Cloud Computing and Role Activity) - 雲端系統的User requiment - 先跟使用者要確認,你要提供甚麼功能 - 如果沒有談好,會沒有邊界、沒有目標 - 使用者需求訂的明確,才可以訂好test plan - 不然會有抓不完的臭蟲 - unit test: 工程師測試單一function是否正確 - system test: 整體應用程式的功能測試,不用知道程式碼如何運作 ## Berkeley View - 雲端服務發展的重要性堪比晶圓的發展 - CapEX to OpEX - 風險的轉移 - 從自己架設軟體,改成根據收費從服務提供商取得操作權 - 不見得是好的,對於技術好的人來說,或許自己架設會更為完善、划算 - Pay as you go - 根據你的操作收費 - 付錢了==立刻==就可以用 - 效率上的改進 - 雲端服務的議題(機會) ![](https://i.imgur.com/BsfyDP7.png) * Availability of Service:能否連上服務 <!--這個我剛剛沒聽到--> * Data Lock-In: 過去軟體服務很難轉移 * Data Confidentiality and Auditability: 安全性,會不會被竊取資料? * Data Transfer Bottlenecks:傳輸的速度 * Performance Unpredictability:由於責任的分級,如果使用別人提供的服務,只能控制自己可操控的部分,底層的部分可能無法更改 * Scalable Storage: 隨著使用者的數量成長,系統在計算、儲存方面要擴展 * Bugs in Large Distrubrted Systems: * 一層疊一層的開發方式,可能會造成Bugs不是自己的Code產生,而是更底層的服務發生的 * 需要 log * Scaling Quickly: 底層的服務不好,上層的服務也會不好 (有點像生物放大作用) * Reputation Fate Sharing: 連坐罰,如果跟你同區的人是spammer,你也會被block * Software Liensing: 底層服務整合後,再算到使用費裡 (?) ## lan Foster et al. : Seven risks a Cloud user should raise with vendors - Privileged user access(資安) - Regulatory compliance:法規 - Data location:因為有法規的限制,資料放在哪邊就很重要。 - e.g.facebook如果想要在歐盟發展,歐盟要求資料要放在歐盟不可以放在美國 - 資料並非無國界 - Data segregation(資安):別人要搜尋到我的資料,必須要有我的授權。(也是許多個資法保護的議題) - Recovery:資料不能主機壞掉就不見了 - Investigative support:雲端出現問題,要找出問題需要足夠的log - Long-term viability:如果某一家公司倒了,那它上面的資料該如何處理,屬於使用者or公司? # 區塊鍊技術和責任 - 無論雲端使用何種服務類別或部署模式,其核心組建和建構都是相同的 - 由中央處理器CPU、記憶體RAM、網路和硬碟組成 - 根據雲端服務類別(需求)不同,雲端客戶將對這些建構塊有不同程度的責任或控制 - 雲端服務要去區分使用者是什麼角色,角色不同可以操控的權限也不同。 - Provider - 提供服務、儲存資料 - Partner - 負責做Auditing(審計),負責監察,讓Customer能安心把資源存在Provider那 - Customer - 客戶可以做進階資源控制 - 客戶:一間大公司 - 進階資源控制:每個部門能取得的資源不同 > 做軟體永遠不能忘記需求是甚麼[name=教授] # 雲端服務架構 ## IaaS ### IaaS提供的能力是 - 處理、儲存、網路和其他基本計算資源 - 能夠在其中任意部署和運行各種軟體 - 使用者==無法==管理或控制底層雲端基礎設施(不能控制IaaS) - 是一種責任分權的概念,如果是IaaS出問題就是Provider的問題,但是如果是自己上層設定出問題,就是自己的問題 - 可以操作系統、儲存和部署應用程式以及可能有限的控制選定網路元件(e.g.防火牆) ### VM Placement - 使用者控制的層級在虛擬機器以上 ### IaaS的優點 - 可擴展姓(Scalability) - 系統可以自行快速擴展資源分配,e.g.可以多開幾個VM - 高可用性(Avaibility) - 底層有很多資源可以滿足客戶需求 - 實體安全要求 - 使用者沒有自己的數據中心,所以要提供使用者資訊安全的保障 - 底層必須要安全的,不然上層使用者無論如何都無法做好資料安全的保護 - 位置和存取獨立性 - 當你使用服務的時候,邏輯計算跟實體計算是分開的 - 在甚麼樣的實體機器(host)跑虛擬機(VM)都沒差,主要是虛擬機器在跑程式 - 可以帶著VM趴趴走 - 計量使用 - 即使用計費 - 實體硬體使用成本 - 使用者不須購買硬體,且可以想用就用 - "綠色"數據中心的潛力 - 用電量省不省、對能源的使用效率會影響Data Center的競爭力 - e.g.Google建的會有營運上的壓力,所以對能源的使用效率比較高,相較之下學校組織自己架設的可能就不太在乎能源的浪費 ### Auto-Scaling 分散式系統由電腦計算自動擴展VM,而不是人工去增減 ## PaaS ### PaaS提供的能力 - 用戶可以將自己建設或取得的應用程式架設在PaaS上 - 應用程式是由服務提供商的服務、工具、函式庫建立 - 用戶不管理或控制底層的基礎設施,包括網路、伺服器、作業系統或儲存空間的 - 使用者只能控制API以上的東西,底層的環境依附於Provider ### PaaS的優點 - 環境的選擇 - 使用者可以自行選擇操作系統的版本環境、風格方式等 - 多主機環境 - 使用者可以選擇要使用的作業系統和環境,但不需要像IaaS一樣全部自己細節設定,因此可以方便快速的測試不同環境參數 - 易於升級 - 升級環境由提供商負責 - 具有成本效益 - 傳統上可能需要三種機器 - 開發一組、測試一組、上市一組 - 現在在開發期間不需要測試,就不需要付測試需要的錢 - 需要的時候再租借即可,可以避免資源的閒置與浪費 - 易於存取 - 跨國協作 - 如果實際使用的時候還是要考慮各國的規範 - 許可權 - Library、OS的使用權限由底層的服務商處理 - e.g.使用者不需要自己考慮Office或Windows使用權限 ## SaaS - 使用者完全沒有控制權,只能使用服務 - 若資料被盜取,就是Provider的問題 - 除非自己密碼設的太簡單QQ - 不需管理網路、伺服器、作業系統、儲存空間甚至個人應用程式的功能 - 易於使用和管理 - 不需要自行控管太多底層細節 - 標準化 - 大家都使用同樣的系統環境 ## 雲端部署模型 - 公有雲 - 政府、學界單位 - 私有雲 - 雲端基礎設施為單個組織專用 - 責任都在於公司 - 部門戰爭XD - 社群雲 - 混合雲 ## 雲端服務的共通性議題 - 互操作性 - 增加可能的收費來源 - e.g.google的搜尋引擎被很多地方引用 - 效能、可用性、彈性 - 虛擬環境下是可以輕鬆移動虛擬機和服務的 - 彈性(Resilience): 韌性、若出現問題,是否能繼續操作下去(不是就直接死掉了) - 可移植性 - 平台是否遵行標準化,會影響移植性的可行性 - 服務級別鑑定(SLA) - SLA是一種服務提供商對客戶的承諾,同時也是一種限制 - SLA由partner協助建立 - 法規要求 - 法規會限制一個服務是否可被使用、使用者如何可使用 - 安全性 - 使用不同的雲端服務類型,會有不同的責任 - Privacy - 對儲存資料有所限制 - 法律的限制 -> 雲端服務商對資料的使用有限制 - 可審計性 - Partner幫Customer監察Provider是否符合標準 - 通過審計就是一個 reliable 的雲端服務 - 監管 - 計算、資料使用等等都會有紀錄,要留下紀錄才可以使Partner審計 - 維護和版本控管 - 不同層級的服務,Provider和Custumer對於版本維護有不同的責任 - 可逆性 - 用戶儲存資料後可以再次取出,是現今社會在進行審計時的主流監察事項。 # ISO/IEC 17789 - 定義雲端服務上的角色、行為 - 讓大家在開發雲端服務時有一個統一架構可以參考 - 希望這個規範可以跟技術脫軌 - user requirement不能寫得太像design documents - 為了保留彈性,一個requirement可以有不同的design去實作 ## 雲端服務的角色 - Provider(CSP) - 功能最多,要執行的任務最多 - business manager - 管理如何付費、租用 - 只要跟錢有關的都跟Business有關,包刮收費、尋找潛在客戶等等 - service manager - 雲服務之間可能會有peer service的關係 - Customer(CSC) - 可能會有Customer將租借來的服務再租借給別人 - 老鼠會的概念 - Customer也可能會一次租借很多不同的服務給其用戶,此事會有integrator(也是一種Customer)負責進行整合。 - 公司&部門 - buisness manager: 採購單位 - Partner(CSN) - Auditor - 審計 Provider 是否符合規範 - Broker - 作為服務提供者和使用者的仲介,幫助使用者找到適合的服務 - Service Developer - 有的Provider可能不會進行開發,只負責營運。這時候Developer會負責進行開發。 > 因為雲端服務本質是一種服務,一定樣從人開始考量,所以一定要將使用者分類 :::info :::spoiler click to open the test(3/7) ### 3/7 - 下列何者不是「ISO/IEC 17789所定義的雲端運算參考架構 CCRA」中的三大角色? - Customer - Provider - Partner - [x] Developer ::: ## Cross-Cutting - **auditability** - 可審性 - **availability** - 可用性 - 是否會因為運算速度、傳輸速度影響可用性 - **governance** - 監管所有的步驟是否可以被達成,要交給Provider從最源頭開始執行。 - **interoperability** - 互操作性 - **maintenance** - 可維護性 - 會跟系統安全有關,當使用的系統或是環境本身就有漏洞,就會被攻擊 - 當使用者在使用雲端服務時,當遇到系統漏洞,可能會是服務提供商本身提供的環境問題,也可能是使用者架設時的問題,責任一人一半 - 但是當使用者使用的服務越底層(e.g.IaaS),使用者需要負的責任通常越多 - **performance** - 表現性 - 已經不是有或沒有的問題,是達標或基準線的問題 - e.g.要求五分鐘要跑完,一二三四分鐘跑完都可以,六分鐘就不行 - 即使效能是一件非離散的性質,在所有的軟體上,效能都應給一個基準線,才可以成為一個可量測的項目 - **portability** - 可移植性 - 通常要做到完全的可移植,在不同開發環境執行不太容易 - **protection-of-personally** - > 通常會是造成最大損失的部分 - **resiliency** - **reversibility** - 刪除的資料是否真的被刪除 - 非常難做到,要知道資料庫的資料是否被刪除,需要資料庫權限 - 但是有資料庫權限的卻通常是自己人 ## Architecture ### CCRA Layers - 除了上述的規範應該要達到外,還規定了軟體應如何被設計出來 - 四個層級 ```graphviz digraph { node [shape="record"] g [label="{User layer | Access layer | Service layer | Resource layer}| Multi-layer functions"] } ``` ![](https://i.imgur.com/JEsJBnl.png =800x) ## 雲端運算安全概論常見的協定與標準 ### IS0/IEC 27001 and 27001:2013 - 資訊系統及評估其資料安全性最好的標準之一 - ==資訊安全領域==的方法與實作 - 混合模型或跨越多個供應商時,因各家供應商的政策不同而導致實現困難 ### NIST SP 800-53 - NIST SP 800-53雖然專為==政府公務==,但它提供了強大的安全基準和認證 - 不是雲端供應商必須遵守的文件,並且可能包含私人組織難以遵守的規範 ### PCI DSS - ==支付卡行業==資料安全標準 - 信用卡公司制定 - 適用於大公司(Visa,MasterCard、Discover、American Express和JCB),不適用於私人公司或商店品牌 ### SOC 1,SOC 2, and SOC 3 - 服務組織控制 (SOC, Service Organization Control), 其包括一系列標準,用於評估和稽核服務行業公司運用的==財務資訊的使用和控制== - SOC1: 著重於組織及其財務報表的財務稽核的相關資訊 - SOC2(for enterprise) and SOC 3 (for customer): - 五大領域 ( 安全原則、可用性、處理完整性、機密性和隱私) ### Common Criteria - 基於 ISO/IEC 15408 標準 - 通用標準希望組織對其實作和結果的安全做出實質性要求 - (SFR, Secure Functional Requirements), (EAL, Evaluation Assurance Level) ### FIPS 140-2 - 四個安全級別: Level 1:唯一的要求是使用的加密模組,並且必須至少有一個在已批准列表中 Level 2:在基於角色的身份驗證的要求中通過加密模組驗證的過程。該模組還必須有機制來顯示任何試圖篡改它的證據。 Level 3:採用實體保護方法,確保任何篡改企圖都是明顯和可檢測,且要求加密模組不僅要向系統驗證用戶身份,還要驗證授權 Level 4:提供最高級別的安全和篡改檢測,任何企圖篡改都將被檢測和禁止,如果篡改成功,任何明文資料都將清除 ### SP 500-293 - NIST雲端技術路線圖,是美國政府機構使用和遷移到雲端計算平台的說明書 - 指導政府==IT部門評估雲端技術==,看這些技術對IT運行的適用性以及雲端框架內的安全模型 ## 隱私權角色和責任 ### Privacy at Application - 服務提供商和使用者都須負責任 ## 敏感資料的分類 - 個資敏感資料是法律已明確規定要保護的 - 信用卡資料 - 部分的資料位於灰色地帶 - 性別、宗教等等 - 當我們拿這些資料標註使用者時,可能要對這些 token 進行保護和加密 - 也許有些國家和規章不限制這些資料的隱私,但還是應該注意 - 資安不是要做到多少,而是要付出多少代價去做到多少 ### 定義控制的應用 - 雲端安全聯盟雲端控制矩陣提供了雲端環境上安全控制領域的框架。 ### IRM - 檔案權限管理,決定誰可以對檔案做甚麼 - 不只單純權限分級,還要可以對檔案分類和控制 - 稽核 - 可以知道誰何時對檔案做了什麼 - 必須要有不可否認性的能力 - 過期 - 文件有時效性 ,e.g:Email - 保護 - 資料本身要有保護,對資料的一些行為要監控 ## 雲端資料的保留和歸檔 - 資料的擁有者已經刪除了(Deletion),資料還有保留(Retention) - 因此Deletion不代表真的刪除了,可能還要進到Retention或是Archiving的階段 - Deletion、Retention、Archiving都有法律上的規範,三個行為很像但不一樣 - 同樣都是使用者刪除資料,但是對於後續的處理動作不同 - 資料走過的痕跡 - 歐洲的法規,使用者可以要求服務商刪除一切檔案的痕跡。 - 也就是不能保留或是歸檔 - 即使符合個資法,不外洩資料,可能還是資料會被保留,被服務商分析。 :::info :::spoiler click to open test 4/11 ### 4/11 - 關於「雲端資料發現、分類、保留、刪除、歸檔、稽核、追蹤」,下面哪一個是對的敘述 - 下列事件屬於PaaS層級事件: Hypervisor記錄、DNS記錄、入口網頁記錄、網路相關記錄以及雲端用戶用於配置和管理其服務和計費記錄的管理和自主服務的記錄。 - [x] 安全和資訊事件管理(SIEM)系統:收集和索引記錄,並使這些來源可被搜索,並向組織及其用戶報告。 - 加密粉碎/擦除: 資料通過加密被刪除,產生的金鑰需被永久保留,以確保資料可以被監管。 - Information rights management (IRM) 是指確認資料的來源或真實性的能力。這通常通過數位簽章或雜凑來完成,以確保資料沒有被修改。 ::: :::info :::spoiler clickto open test 4/18 - 關於「Linux核心虛擬化實務」,下面哪一個是錯的敘述? - 我們可在windows作業系統上透過VirtualBox安裝Linux作業系統 - kvm是一種基於Linux核心的虛擬機器 - 可在ubuntu上安裝kvm來建立虛擬機器 - ubuntu上的kvm虛擬機器只能建立一台 ::: ::: # 期中考 - 60分是前後測範圍,不會完全一樣但概念會相同。 - 大約30分是非題,比較難,可能比較多陷阱。 - 剩下都是問答題,比較簡單。 - 其中會有四題名詞解釋,佔四十分,為了湊一百分用的。 ```以上憑印象打的,不保證正確。 <!--這張圖太大,我就不畫了 交給我吧!!!!!!! !?--> <!-- 對於一般學生來說 business role: 自己 Admin: 自已 developer: 自己 Adutitor:自己 Partner:自己 --> <!-- 以minecraft為例 使用者連接到minecraft server server詢問身分 使用者回傳身分證(正版序號(?)) server將身分證拿去minecraft主server進行驗證 驗證完畢確認正確以後同意使用者連接server --> <!-- 他知道他的投影片放映方式不太對嗎 這樣我都被據透他下一張要講甚麼了 --> ``` ### module 1-1 目標:了解 Cloud Computing 起源、NIST SP 800-145 、ISO/IEC 17788 ![](https://i.imgur.com/mbmZrSt.png) ![](https://i.imgur.com/IkeqKHh.png) --- ### module 1-2 目標:了解 Cloud Computing 的可能影響、NIST SP 800-145 、ISO/IEC 17789 的雲端參考架構與功能 ![](https://i.imgur.com/s2MEyWg.png) ![](https://i.imgur.com/Q0BjpkJ.png) ![](https://i.imgur.com/3b0bRLo.png) ![](https://i.imgur.com/XXxSGDU.png) ![](https://i.imgur.com/I0HV0Ka.png) --- ### module 1-3 目標:了解雲端相關之安全概念、CSA(Cloud Security Alliance)發布的核 心威脅、不同雲端類別的安全注意事項、安全的運算運算設計準則、辨識可信 賴雲端服務:雲端運算安全概論常見的協定與標準 ![](https://i.imgur.com/WFoQEQ5.png) * 27001:2013為ISO 27001的更新版本,其被認為是資訊系統及評估其資料安全性最好的標準之一 * 專注於資訊安全領域的方法與實作 * 框架在單個雲端供應商的環境中是有價值且適用。但是一旦採用混合模型或需跨越多個供應商時,即使在環境上是相近的,仍會因各家供應商的政策不同而導致實現困難 * NIST SP 800-53是專門為與美國聯邦政府和有關單位有業務往來的人員所撰寫,但它提供了強大的安全基準和認證 * 缺點:不是雲端供應商必須遵守的文件,並且可能包含私人組織難以遵守的規範 * FIPS(Federal Information Processing Standard)140-2是由美國聯邦政府NIST所製定 * 四個安全級別: * Level 1:唯一的要求是使用的加密模組,並且必須至少有一個在已批准列表中 * Level 2:在基於角色的身份驗證的要求中通過加密模組驗證的過程。該模組還必須有機制來顯示任何試圖篡改它的證據。 * Level 3:採用實體保護方法,確保任何篡改企圖都是明顯和可檢測,且要求加密模組不僅要向系統驗證用戶身份,還要驗證授權 * Level 4:提供最高級別的安全和篡改檢測,任何企圖篡改都將被檢測和禁止,如果篡改成功,任何明文資料都將清除 * PCI DSS的標準由信用卡公司制定,且接受該公司信用卡的商家必須遵守該標準 * 適用於大公司(Visa,MasterCard、Discover、American Express和JCB),不適用於私人公司或商店品牌 --- ### module 2-1 目標:了解雲了解雲端資料生命週期、設計和實施雲端資料儲存架構、資 料安全設計與應用、資料發現和分類技術 ![](https://i.imgur.com/clpC5ze.png) A: 是PaaS ![](https://i.imgur.com/4uWtTns.png) ![](https://i.imgur.com/U1D9CAt.png) ![](https://i.imgur.com/VtQTTqN.png) --- ### module 2-2 ![](https://i.imgur.com/834M1FO.png) 答案是**B** * 應為 IaaS * PaaS: 輸入驗證失敗、身份驗證成功和失敗、授權(存取控制)失敗、會話管理失敗、應用程式錯誤和系統事件、應用程式和相關系統的啟動以及記錄初始化、使用高風險功能、法律和其他選擇 * 資料通過加密被刪除,產生的金鑰需被永久刪除,以確保資料永遠無法回復。 * **不可否認性**是指確認資料的來源或真實性的能力。這通常通過數位簽章或雜凑來完成,以確保資料沒有被修改。 * Information rights management (**IRM**) 包含於 digital rights management (DRM), 主要用於保護機密或敏感資料被未授權者存取 # 實習課: KVM # 實習課:K8S minikube ## K8S ## Docker > 我自己的[小筆記](https://hackmd.io/@wasabi-neko/SyUwpEaFv) > 真的很小,而且可能有錯。如過有錯可以幫我改 > 不確定該不該直接 copy-paste 過來,目前就先放個連結 # 3.1 # 3.2 <!-- 好像有一段時間沒有更新了 ->

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully