Security, IAM AWS sh shared red res espon ponsib sibility - - PowerPoint PPT Presentation

security iam aws sh shared red res espon ponsib sibility
SMART_READER_LITE
LIVE PREVIEW

Security, IAM AWS sh shared red res espon ponsib sibility - - PowerPoint PPT Presentation

Security, IAM AWS sh shared red res espon ponsib sibility ility mo model el Portland State University CS 430P/530 Internet, Web & Cloud Systems Cloud ud se security urity In this course, security "in-the-cloud" via


slide-1
SLIDE 1

Security, IAM

slide-2
SLIDE 2

AWS sh shared red res espon ponsib sibility ility mo model el

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-3
SLIDE 3

Cloud ud se security urity

 In this course, security "in-the-cloud" via

 IAM (Identity and Access Management)

 Controlling access to resources by developers, operations team, accounting

 Network security groups

 Won't cover security within your application

 Still must secure the individual applications and systems running in the

cloud

 See CS 495/595: Web Security

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-4
SLIDE 4

IAM (Identity and Access Management)

slide-5
SLIDE 5

Identity entity (Auth uthentica entication tion)

 Validating users and applications  For users, done via

 What you know

 Password, security questions

 What you have

 Hardware token (U2F, WebAuthN)  Phone

 Who you are

 UAF or mobile authentication app with fingerprint sensor or FaceID

 Where you are

 IP address  Geographic location

 For applications

 (e.g. external web application, internal web application, database)  What you have

 API keys, service-account keys (which must be kept safe!)

 Where you are

 IP address (VPC)

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-6
SLIDE 6

Access cess Managemen nagement t (Aut uthorization)

  • rization)

 Policy to set which users are allowed which actions on which objects

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-7
SLIDE 7

Types pes of access ccess ma manag nagement ement po policies icies

 Discretionary Access Control

 Object owner decides  Linux model of owner setting coarse permissions on user, group, other

 Mandatory Access Control

 System or administrator decides  Mandated in high-security environments (e.g. government)

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-8
SLIDE 8

Types pes of access ccess ma manag nagement ement po policies icies

 Role-Based Access Control (system decides based on user role)

 Role determines set of privileges afforded for access  Examples

 IT admin  Software developer  Billing administrator  Third-party integrator  Partner users  End-users  Partner applications

 Apply principle of least privilege (ideally)

 Ensure the minimal level of access that a task or user needs  Must apply regardless of the type of policy

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-9
SLIDE 9

Access cess ma manag nagement ement via a IAM

 Based on Role-based Access control

 Action permissions assigned by role

 IAM policy determines who can do what action to which resource  Particular identities or membershops

 Google account/group, service account

 Assigned to primitive pre-defined roles with permissions (or given

individual permissions)

 Curated roles so you do not need to roll your own  Owner (create, destroy, assign access, read, write, deploy)  Editor (read, write, deploy)  Reader (read-only)  Billing administrator (manage billing)

 On specified resources that include

 Virtual machines, network, database instances  Cloud storage buckets (gs://…)  BigQuery stores  Projects

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-10
SLIDE 10

GC GCP P exa xample ple

https://cloud.google.com/compute/docs/access/iam https://cloud.google.com/compute/docs/access/iam-permissions

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-11
SLIDE 11

Ex Example: ple: Compu pute e En Engi gine ne Instan stance ceAdmin dmin

Portland State University CS 430P/530 Internet, Web & Cloud Systems

Who? What actions? What resources?

slide-12
SLIDE 12

Ser ervice vice acco ccounts unts

 Specific to Google Cloud  Provides identity for software/applications

 Allows authenticated access based on a shared secret key  Service account identified via e-mail address that includes Project ID  Must restrict permissions per-account (least privilege) so that account

compromise does not compromise entire project

 Example

 Service account level-ssh@handy-compass-212520.iam.gserviceaccount.com

with role Cloud Datastore Viewer and Logs Viewer

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-13
SLIDE 13

 Can issue service account key to authenticate as a specific service

account from console

 Google manages keys for certain services automatically (AppEngine,

ComputeEngine)

 Must keep keys secure!

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-14
SLIDE 14

 Can associate service account directly to a resource (without a key)

 VM run associated with service account's role

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-15
SLIDE 15

Caution! ution!

 GCP credentials and keys should be protected at all times

 Audit Github, Bitbucket, Dockerhub, web

 Crawlers continuously looking for credentials on public repositories

 Immediately regenerate keys if exposed

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-16
SLIDE 16

IAM M roles es

 Users and accounts originally given roles (owner, editor, reader) with

fixed permissions

 But, each resource must have highly granular control over access to

properly secure resources (e.g. many permissions)

 Examples

 e-Commerce site with a crashing bug

 Developer wants to access logs is given reader access to instance  Can read logs to do job  But can also access all personally identifiable information of the site’s users!

 Continuous integration tool used in DevOps is given editor access to

deploy updates

 Can update code, but also modify storage buckets, compute instances, and network

configuration!

 Must assign permissions at a granular level

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-17
SLIDE 17

IAM M comple plexity xity

 Granular access control leads to thousands of permissions and

complex policies

 Organized via a hierarchy to ease management burden

 Implement inheritance of permissions where higher-level permissions

trump lower ones

 Set permissions across all projects at once  Set permissions of resources (i.e. 1000s of VMs/buckets in project) at once

 Command-line scripting, configuration management via commercial

tools

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-18
SLIDE 18

Hierar erarchical chical ma manag nagement ement

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-19
SLIDE 19

Network security in the cloud

slide-20
SLIDE 20

Netw etwor

  • rk-la

layer er se security urity

 Access control based on network address and transport layer port  Done via security groups (AWS and GCP)

 Host-based firewall rules (similar to Linux iptables, but defined at

project-level)

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-21
SLIDE 21

Ex Example: ple: Secu ecurity rity Gr Groups ups in AWS

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-22
SLIDE 22

VPCs

 Virtual private clouds

 Restrict access to only internal connections  AWS

 Support for NATs between private nodes and the public Internet

 GCP

 CloudNAT and support multiple interfaces

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-23
SLIDE 23

Billing

slide-24
SLIDE 24

Bi Billing lling

 Throughout the term, to get a feel for what costs money, check detailed

billing

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-25
SLIDE 25

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-26
SLIDE 26

View w sp spen ending: ding: Bi Billing=>R lling=>Repor eports ts

 Group by Product on the right  Then view below graph to see

consumption per product

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-27
SLIDE 27

Bi Billing lling sa sadness dness

 Don't be like…

Portland State University CS 430P/530 Internet, Web & Cloud Systems

slide-28
SLIDE 28

Bu Budge get t al alerts ts: : Bi Bill lling=>Budge ng=>Budgets ts & Ale Alerts ts

 Set a budget of $15/month

 Alert on 50%, 80%, 90% so you

get a warning on over- expenditures

Portland State University CS 430P/530 Internet, Web & Cloud Systems