Zabezpečení objektů

Introduction to AWS Boto in Python

Maksim Pecherskiy

Data engineer

Proč jsou oprávnění důležitá?

df = pd.read_csv('https://gid-staging.potholes.csv')

Přehled oprávnění

Introduction to AWS Boto in Python

Proč jsou oprávnění důležitá?

Oprávnění uděleno!

# Generate the boto3 client for interacting with S3
s3 = boto3.client('s3', region_name='us-east-1', 
                         aws_access_key_id=AWS_KEY_ID, 
                         aws_secret_access_key=AWS_SECRET)

# Use client to download a file s3.download_file( Filename='potholes.csv', Bucket='gid-requests', Key='potholes.csv')
Introduction to AWS Boto in Python

Systémy oprávnění v AWS

IAM

Zásada bucketu

ACL

Předsdílená URL

Introduction to AWS Boto in Python

Systémy oprávnění v AWS

IAM

Zásada bucketu

ACL

Předsdílená URL

Introduction to AWS Boto in Python

ACL

ACL

Introduction to AWS Boto in Python

ACL

Nahrání souboru

s3.upload_file(
  Filename='potholes.csv', Bucket='gid-requests', Key='potholes.csv')

Nastavení ACL na 'public-read'

s3.put_object_acl(
  Bucket='gid-requests', Key='potholes.csv', ACL='public-read')
Introduction to AWS Boto in Python

Nastavení ACL při nahrávání

Nahrání souboru s ACL 'public-read'

s3.upload_file(
  Bucket='gid-requests', 
  Filename='potholes.csv', 
  Key='potholes.csv', 
  ExtraArgs={'ACL':'public-read'})
Introduction to AWS Boto in Python

Přístup k veřejným objektům

Šablona URL objektu S3

https://{bucket}.{key}

URL pro Key='2019/potholes.csv'

https://gid-requests.2019/potholes.csv
Introduction to AWS Boto in Python

Generování veřejné URL objektu

Sestavení URL objektu

url = "https://{}.{}".format(
  "gid-requests", 
  "2019/potholes.csv")

'https://gid-requests.2019/potholes.csv'

# Read the URL into Pandas
df = pd.read_csv(url)
Introduction to AWS Boto in Python

Jak se rozhoduje o přístupu

Hierarchie přístupu

Introduction to AWS Boto in Python

Jak se rozhoduje o přístupu

Hierarchie přístupu

Introduction to AWS Boto in Python

Opakování

IAM

Zásada bucketu

ACL

Předsdílená URL

Introduction to AWS Boto in Python

Opakování

Nastavení ACL na 'public-read'

s3.put_object_acl(
  Bucket='gid-requests', Key='potholes.csv', ACL='public-read')

Nastavení ACL na 'private'

s3.put_object_acl(
  Bucket='gid-requests', Key='potholes.csv', ACL='private')
Introduction to AWS Boto in Python

Opakování

Nahrání souboru s ACL 'public-read'

s3.upload_file(
  Bucket='gid-requests', 
  Filename='potholes.csv', 
  Key='potholes2.csv', 
  ExtraArgs={'ACL':'public-read'})
Introduction to AWS Boto in Python

Opakování

Sestavení URL objektu

url = "https://{}.{}".format(
  "gid-requests", 
  "2019/potholes.csv")

'https://gid-requests.2019/potholes.csv'

# Read the URL into Pandas
df = pd.read_csv(url)
Introduction to AWS Boto in Python

Lass uns üben!

Introduction to AWS Boto in Python

Preparing Video For Download...