├── IAM ├── .iam_users_info.py.swp ├── create_120users.py ├── get_all_iam_users.py ├── iam_users_info.py └── list_users.py ├── README.md ├── access_keys.py ├── automate_ebs_snaps.py ├── create_an_iam_user_console_login_access.py ├── create_snap.py ├── delete_unused_untagged_ebs_volumes.py ├── file_from_s3.py ├── get_all_iam_users_details.py ├── get_all_regions_for_ec2_service.py ├── get_all_snapshots.py ├── get_aws_account_id.py ├── get_iam_user_details.py ├── get_inst_state_using_client.py ├── get_instance_status.py ├── iam_user_details.py ├── list_instances.py ├── list_snapshots.py ├── menu_driven_start_stop_reboot_terminate.py ├── resource_ebs_snap.py ├── start_stop_re_ter.py ├── status_of_instance.py ├── test.py ├── unuser_untagged_volumes.py ├── waiter_for_ec2.py └── working_with_s3.py /IAM/.iam_users_info.py.swp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AutomationWithScripting/UdemyBoto3Scripts/29cf081526cf81995a9d0baf20e94399e5e33a82/IAM/.iam_users_info.py.swp -------------------------------------------------------------------------------- /IAM/create_120users.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3,sys 3 | from pprint import pprint 4 | while True: 5 | session=boto3.session.Session(profile_name="dev_root") 6 | iam_re=session.resource(service_name="iam") 7 | for each in range(701,1100): 8 | try: 9 | iam_re.create_user(UserName="ixasisiidemo"+str(each)) 10 | if each==509: 11 | sys.exit() 12 | except: 13 | continue 14 | -------------------------------------------------------------------------------- /IAM/get_all_iam_users.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | 4 | session=boto3.session.Session(profile_name="dev_root") 5 | ''' 6 | iam_re=session.resource("iam") 7 | cnt=1 8 | for each_user in iam_re.users.all(): 9 | print cnt,each_user.user_name 10 | cnt=cnt+1 11 | 12 | cnt=1 13 | iam_cli=session.client("iam") 14 | for each_user in iam_cli.list_users()['Users']: 15 | print cnt, each_user['UserName'] 16 | cnt=cnt+1 17 | ''' 18 | 19 | ''' 20 | cnt=1 21 | iam_cli=session.client("iam") 22 | paginator = iam_cli.get_paginator('list_users') 23 | for each_page in paginator.paginate(): 24 | for each_user in each_page['Users']: 25 | print cnt,each_user['UserName'] 26 | cnt=cnt+1 27 | ''' 28 | iam_cli=session.client("ec2") 29 | paginatro=iam_cli.get_paginator('describe_instances') 30 | for each_page in paginatro.paginate(): 31 | print each_page 32 | 33 | 34 | -------------------------------------------------------------------------------- /IAM/iam_users_info.py: -------------------------------------------------------------------------------- 1 | S_NO,IAM_User_Name,Console_Access,Programatic_Access,Policy_Arn 2 | 1,dowithpython@gmail.com,Yes,No,arn:aws:iam::aws:policy/AdministratorAccess 3 | 2,dowithscripting@gmail.com,Yes,Yes,arn:aws:iam::aws:policy/AmazonS3FullAccess 4 | 3,PNKMR1221@gmail.com,No,Yes,arn:aws:iam::aws:policy/IAMFullAccess 5 | -------------------------------------------------------------------------------- /IAM/list_users.py: -------------------------------------------------------------------------------- 1 | import boto3 2 | iam_re=boto3.session.Session(profile_name="dev_root").resource('iam') 3 | iam_cli=boto3.session.Session(profile_name="dev_root").client('iam') 4 | cnt=1 5 | ''' 6 | for each in iam_re.users.all(): 7 | print cnt,each.user_name 8 | cnt=cnt+1 9 | for each in iam_cli.list_users()['Users']: 10 | print each 11 | 12 | print len(iam_cli.list_users()['Users']) 13 | ''' 14 | 15 | paginator = iam_cli.get_paginator('list_users') 16 | for each_page in paginator.paginate(PathPrefix="/"): 17 | print len( each_page['Users']) 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UdemyBoto3Scripts 2 | AWS Automation boto3 scripts 3 | -------------------------------------------------------------------------------- /access_keys.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from botocore.exceptions import ClientError 4 | import datetime 5 | 6 | def get_usr_old_keys(key_age): 7 | session=boto3.session.Session(profile_name="dev_root") 8 | iam_client = session.client('iam',region_name='us-east-1') 9 | 10 | 11 | 12 | def lambda_handler(event, context): 13 | key_age=90 14 | snstopicarn="" 15 | return get_usr_old_keys( key_age ) 16 | 17 | 18 | print lambda_handler(None,None) 19 | -------------------------------------------------------------------------------- /automate_ebs_snaps.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from pprint import pprint 4 | 5 | session=boto3.session.Session(profile_name="dev_root") 6 | 7 | ec2_client=session.client(service_name="ec2",region_name="us-east-1") 8 | list_of_volids=[] 9 | f_prod_bkp={'Name':'tag:Prod','Values':['backup','Backup']} 10 | #for each_vol in ec2_client.describe_volumes(Filters=[f_prod_bkp])['Volumes']: 11 | # list_of_volids.append(each_vol['VolumeId']) 12 | paginator = ec2_client.get_paginator('describe_volumes') 13 | for each_page in paginator.paginate(Filters=[f_prod_bkp]): 14 | for each_vol in each_page['Volumes']: 15 | list_of_volids.append(each_vol['VolumeId']) 16 | 17 | 18 | 19 | print "The list of volids are: ",list_of_volids 20 | snapids=[] 21 | for each_volid in list_of_volids: 22 | print "Taking snap of {}".format(each_volid) 23 | res=ec2_client.create_snapshot( 24 | Description="Taking snap with Lambda and cw", 25 | VolumeId=each_volid, 26 | TagSpecifications=[ 27 | { 28 | 'ResourceType':'snapshot', 29 | 'Tags': [ 30 | { 31 | 'Key': 'Delete-on', 32 | 'Value': '90' 33 | } 34 | ] 35 | } 36 | ] 37 | ) 38 | snapids.append(res.get('SnapshotId')) 39 | 40 | print "The snap ids are: ",snapids 41 | 42 | 43 | waiter = ec2_client.get_waiter('snapshot_completed') 44 | waiter.wait(SnapshotIds=snapids) 45 | 46 | print "Succssfully completed snaps for the volumes of {}".format(list_of_volids) 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /create_an_iam_user_console_login_access.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from random import choice 4 | import sys 5 | 6 | 7 | 8 | def get_iam_client_object(): 9 | session=boto3.session.Session(profile_name="dev_root") 10 | iam_client=session.client(service_name="iam",region_name="us-east-1") 11 | return iam_client 12 | def get_random_password(): 13 | len_of_password=8 14 | valid_chars_for_password="abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()?" 15 | return "".join(choice(valid_chars_for_password) for each_char in range(len_of_password)) 16 | 17 | def main(): 18 | iam_client=get_iam_client_object() 19 | Iam_user_name="dowithpython@gmail.com" 20 | #passwrd=get_random_password() 21 | PolicyArn="arn:aws:iam::aws:policy/AdministratorAccess" 22 | try: 23 | iam_client.create_user(UserName=Iam_user_name) 24 | except Exception as e: 25 | if e.response['Error']['Code']=="EntityAlreadyExists": 26 | print "Already Iam User with {} is exist".format(Iam_user_name) 27 | sys.exit(0) 28 | else: 29 | print "Please verify the following error and retry" 30 | print e 31 | sys.exit(0) 32 | response = iam_client.create_access_key(UserName=Iam_user_name) 33 | print "IAM User Name={}".format(Iam_user_name) 34 | print "AccessKeyId={}\nSecretAccessKey={}".format(response['AccessKey']['AccessKeyId'],response['AccessKey']['SecretAccessKey']) 35 | #iam_client.create_login_profile(UserName=Iam_user_name,Password=passwrd,PasswordResetRequired=False) 36 | iam_client.attach_user_policy(UserName=Iam_user_name,PolicyArn=PolicyArn) 37 | #print "IAM User Name={} and Password={}".format(Iam_user_name,passwrd) 38 | return None 39 | 40 | if __name__=="__main__": 41 | main() 42 | -------------------------------------------------------------------------------- /create_snap.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from pprint import * 4 | session=boto3.session.Session(profile_name="dev_root") 5 | 6 | ec2_client=session.client(service_name="ec2",region_name="us-east-1") 7 | 8 | f_bkp={'Name':'tag:Prod','Values':['backup','Backup']} 9 | for each_volume in ec2_client.describe_volumes( Filters=[f_bkp] )['Volumes']: 10 | pprint (each_volume) 11 | break 12 | -------------------------------------------------------------------------------- /delete_unused_untagged_ebs_volumes.py: -------------------------------------------------------------------------------- 1 | import boto3 2 | session=boto3.session.Session(profile_name="dev_root") 3 | ec2_re=session.resource(service_name='ec2',region_name='us-east-1') 4 | 5 | ec2_cli=session.client(service_name='ec2',region_name='us-east-1') 6 | all_required_volume_ids=[] 7 | #List all ebs volumes: 8 | #febsu={'Name':'status','Values':['available']} 9 | #for each_vol in ec2_re.volumes.filter(Filters=[febsu]): 10 | for each_vol in ec2_re.volumes.all(): 11 | if each_vol.state=="available" and each_vol.tags==None: 12 | print each_vol.id, each_vol.state, each_vol.tags 13 | all_required_volume_ids.append(each_vol.id) 14 | 15 | #Delete volumes: 16 | 17 | for each_vol in all_required_volume_ids: 18 | volume_ob=ec2_re.Volume(each_vol) 19 | #print dir(volume_ob) 20 | print "Deleting volume of id ",each_vol 21 | volume_ob.delete() 22 | 23 | waiter = ec2_cli.get_waiter('volume_deleted') 24 | try: 25 | waiter.wait(VolumeIds=all_required_volume_ids) 26 | print "Succsffuly deleted all your volumes which are unused and untagged EBS Volumes" 27 | except Exception as e: 28 | print e 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /file_from_s3.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | try: 3 | import boto3 4 | print "Successfully imported boto3" 5 | except: 6 | print "unable to import boto3" 7 | 8 | #session=boto3.session.Session(profile_name="EC2_S3_IAM") 9 | #s3_con_re=session.resource(service_name="s3",region_name="us-east-1") 10 | #s3_con_cli=session.client(service_name="s3",region_name="us-east-1") 11 | 12 | s3_con_cli=boto3.session.Session(profile_name="EC2_S3_IAM").client(service_name="s3",region_name="us-east-1") 13 | 14 | 15 | for each_bucket in s3_con_cli.list_buckets()['Buckets']: 16 | print each_bucket['Name'] 17 | 18 | -------------------------------------------------------------------------------- /get_all_iam_users_details.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ''' 5 | iam_re=session.resource(service_name="iam",region_name="us-east-1") 6 | 7 | for each_user in iam_re.users.all(): 8 | print "UserName={} UserId={} User ARN={} User Creation Date={}".format(each_user.user_name,each_user.user_id,each_user.arn,each_user.create_date) 9 | ''' 10 | iam_cli=session.client(service_name="iam",region_name='us-east-1') 11 | 12 | for each_user in iam_cli.list_users()['Users']: 13 | print each_user['UserName'],each_user['Arn'] 14 | -------------------------------------------------------------------------------- /get_all_regions_for_ec2_service.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_cli=session.client(service_name="ec2",region_name="us-east-1") 5 | 6 | regions=[] 7 | for each_region_info in ec2_cli.describe_regions().get('Regions'): 8 | regions.append( each_region_info.get('RegionName')) 9 | 10 | 11 | print "All regions for ec2 service are: \n",regions 12 | -------------------------------------------------------------------------------- /get_all_snapshots.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | import datetime 4 | 5 | session=boto3.session.Session(profile_name="dev_root") 6 | ec2_res=session.resource(service_name="ec2",region_name="us-east-1") 7 | ec2_cli=session.client(service_name="ec2",region_name="us-east-1") 8 | sts_client=session.client("sts") 9 | ownaccountid=sts_client.get_caller_identity().get('Account') 10 | today=datetime.datetime.now() 11 | 12 | start_time=str(datetime.datetime(today.year,today.month,today.day,4,15,44)) 13 | print start_time 14 | print "Below is using resource object" 15 | for each_snap in ec2_res.snapshots.filter(OwnerIds=[ownaccountid]): 16 | if each_snap.start_time.strftime("%Y-%m-%d %H:%M:%S")==start_time: 17 | print each_snap.id,each_snap.start_time.strftime("%Y-%m-%d %H:%M:%S") 18 | ''' 19 | f_size={'Name':'volume-size','Values':['10']} 20 | print 'Below is using client object' 21 | for each_snap in ec2_cli.describe_snapshots(Filters=[f_size],OwnerIds=[ownaccountid])['Snapshots']: 22 | print each_snap['SnapshotId'] 23 | ''' 24 | -------------------------------------------------------------------------------- /get_aws_account_id.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | 4 | session=boto3.session.Session(profile_name="dev_root") 5 | sts_client=session.client("sts") 6 | 7 | print sts_client.get_caller_identity().get('Account') 8 | -------------------------------------------------------------------------------- /get_iam_user_details.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | import pprint 4 | session=boto3.session.Session(profile_name="dev_root") 5 | re_iam=session.resource(service_name="iam",region_name="us-east-1") 6 | iam_user_ob=re_iam.User("EC2_S3_IAM") 7 | 8 | pprint.pprint(dir(iam_user_ob)) 9 | print "IAM Deatials" 10 | print "============" 11 | print "UserName:{}\nUserId:{}\nUserARN:{}\nUserCreationDate:{}".format(iam_user_ob.user_name,iam_user_ob.user_id,iam_user_ob.arn,iam_user_ob.create_date) 12 | -------------------------------------------------------------------------------- /get_inst_state_using_client.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_console_client=session.client(service_name='ec2',region_name='us-east-1') 5 | 6 | #print dir(ec2_console_client) 7 | 8 | print ec2_console_client.describe_instance_status(InstanceIds=['i-04d79d94e0415e891']) 9 | -------------------------------------------------------------------------------- /get_instance_status.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_console_resource=session.resource(service_name='ec2',region_name='us-east-1') 5 | 6 | #print dir(ec2_console_resource) 7 | my_instance=ec2_console_resource.Instance(id="i-020029a108ce55706") 8 | #print dir(my_instance) 9 | print my_instance.state['Name'] 10 | -------------------------------------------------------------------------------- /iam_user_details.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from pprint import pprint 4 | iam_user=raw_input("Enter you IAM User name to get datials like ID,ARN,CREATION DATE: ") 5 | session=boto3.session.Session(profile_name="dev_root") 6 | iam_re=session.resource(service_name="iam",region_name="us-east-1") 7 | 8 | req_iam_user=iam_re.User(iam_user) 9 | pprint(dir(req_iam_user)) 10 | try: 11 | # print "IAM User: EC2_S3_IAM Detatils\nUser Name: {}\nUser Id: {}\nUser ARN: {}\nUser Creation Date: {}".format(req_iam_user.user_name,req_iam_user.user_id,req_iam_user.arn,req_iam_user.create_date) 12 | for eacg in req_iam_user.groups.all(): 13 | print dir(eacg) 14 | except Exception as e: 15 | print e.response['Error']['Code'] 16 | -------------------------------------------------------------------------------- /list_instances.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | import pprint 4 | session=boto3.session.Session(profile_name="dev_root") 5 | ec2_con_re=session.resource(service_name="ec2",region_name="us-east-1") 6 | ec2_con_cli=session.client(service_name="ec2",region_name="us-east-1") 7 | #-------------------------- 8 | print "Below is using resource object" 9 | for each_in in ec2_con_re.instances.all(): 10 | print each_in.instance_id, each_in.instance_type 11 | print "Below is using client object" 12 | #pprint.pprint( ec2_con_cli.describe_instances()['Reservations']) 13 | for each_info in ec2_con_cli.describe_instances()['Reservations']: 14 | for each_inst in each_info['Instances']: 15 | print each_inst['InstanceId'], each_inst['InstanceType'] 16 | -------------------------------------------------------------------------------- /list_snapshots.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from botocore.exceptions import ClientError 4 | 5 | session=boto3.session.Session(profile_name="dev_root") 6 | sts_cli=session.client("sts") 7 | print sts_cli.get_caller_identity() 8 | 9 | ''' 10 | ec2_re=session.resource(service_name="ec2",region_name="us-east-1") 11 | cnt=1 12 | for each_snap in ec2_re.snapshots.filter(OwnerIds=["943637252859"]): 13 | print cnt,each_snap 14 | cnt+=1 15 | ''' 16 | -------------------------------------------------------------------------------- /menu_driven_start_stop_reboot_terminate.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_con_re=session.resource(service_name="ec2",region_name="us-east-1") 5 | while True: 6 | print "This script will perform the following actions on given instance id" 7 | print "1. start" 8 | print "2. stop" 9 | print "3. reboot" 10 | print "4. terminate" 11 | print "5. Exit" 12 | option=input("Enter your action by selecting a number between 1-5: ") 13 | if option==1: 14 | in_id=raw_input("Enter your instance id: ") 15 | my_in=ec2_con_re.Instance(id=in_id) 16 | print "Please wait we are starting instance" 17 | my_in.start() 18 | elif option==2: 19 | in_id=raw_input("Enter your instance id: ") 20 | my_in=ec2_con_re.Instance(id=in_id) 21 | print "Please wait we are stopping instance" 22 | my_in.stop() 23 | elif option==3: 24 | in_id=raw_input("Enter your instance id: ") 25 | my_in=ec2_con_re.Instance(id=in_id) 26 | print "Please wait we rebooting instance" 27 | my_in.reboot() 28 | elif option==4: 29 | in_id=raw_input("Enter your instance id: ") 30 | my_in=ec2_con_re.Instance(id=in_id) 31 | print "Please wait we are terminating instance" 32 | my_in.terminate() 33 | elif option==5: 34 | print "Thank you for using this script" 35 | break 36 | else: 37 | print "Inavlid option\nPlease select between 1-5" 38 | 39 | 40 | -------------------------------------------------------------------------------- /resource_ebs_snap.py: -------------------------------------------------------------------------------- 1 | #!/bin/python 2 | import boto3 3 | from pprint import pprint 4 | 5 | session=boto3.session.Session(profile_name="dev_root") 6 | ec2_re=session.resource(service_name="ec2",region_name="us-east-1") 7 | vol_ids=[] 8 | #colleting volume Ids 9 | for each_vol in ec2_re.volumes.filter(Filters=[]): 10 | #print each_vol.id 11 | vol_ids.append(each_vol.id) 12 | 13 | print 'All volume ids are: ',vol_ids 14 | 15 | #Creating snapshots for volumes one by one 16 | snap_ids=[] 17 | for each_vo_id in vol_ids: 18 | response= ec2_re.create_snapshot( 19 | Description='Snap with Lambda', 20 | VolumeId=each_vo_id, 21 | TagSpecifications=[ 22 | { 23 | 'ResourceType': 'snapshot', 24 | 'Tags': [ 25 | { 26 | 'Key': 'Delete-on', 27 | 'Value':'90' 28 | } 29 | ] 30 | } 31 | ] 32 | ) 33 | snap_ids.append(response.id) 34 | 35 | print snap_ids 36 | #Creating waiter using client 37 | ec2_cli=session.client(service_name="ec2",region_name="us-east-1") 38 | waiter = ec2_cli.get_waiter('snapshot_completed') 39 | waiter.wait(SnapshotIds=snap_ids) 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /start_stop_re_ter.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_con_re=session.resource(service_name="ec2",region_name="us-east-1") 5 | my_inst=ec2_con_re.Instance(id="i-04d79d94e0415e891") 6 | #print dir(my_inst) 7 | my_inst.start() 8 | #my_inst.stop() 9 | 10 | -------------------------------------------------------------------------------- /status_of_instance.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_console_resource=session.resource(service_name="ec2",region_name="us-east-1") 5 | #print dir(ec2_console_resource) 6 | instance_id=raw_input("Enter your instance id to the status: ") 7 | my_instance=ec2_console_resource.Instance(id=instance_id) 8 | print my_instance.state['Name'] 9 | -------------------------------------------------------------------------------- /test.py: -------------------------------------------------------------------------------- 1 | import boto3 2 | import csv 3 | from pprint import pprint 4 | sts_client = boto3.client('sts') 5 | assumed_role_object=sts_client.assume_role( 6 | RoleArn="arn:aws:iam::943637252859:role/AWSFULLEC2", 7 | RoleSessionName="EC2ROLE" 8 | ) 9 | 10 | 11 | print assumed_role_object 12 | -------------------------------------------------------------------------------- /unuser_untagged_volumes.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | session=boto3.session.Session(profile_name="dev_root") 4 | ec2_con=session.resource("ec2",'us-east-1') 5 | f1={'Name':'status','Values':['available']} 6 | for each_vol in ec2_con.volumes.filter(Filters=[f1]): 7 | print each_vol.state,each_vol.tags,each_vol.id 8 | -------------------------------------------------------------------------------- /waiter_for_ec2.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | import boto3 3 | import time 4 | session=boto3.session.Session(profile_name="dev_root") 5 | ec2_re=session.resource(service_name="ec2",region_name="us-east-1") 6 | my_in=ec2_re.Instance(id="i-04d79d94e0415e891") 7 | my_in.start() 8 | my_in.wait_until_running() 9 | -------------------------------------------------------------------------------- /working_with_s3.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | try: 3 | import boto3 4 | print "Successfully imported boto3" 5 | except: 6 | print "unable to import boto3" 7 | 8 | #session=boto3.session.Session(profile_name="EC2_S3_IAM") 9 | #s3_con_re=session.resource(service_name="s3",region_name="us-east-1") 10 | #s3_con_cli=session.client(service_name="s3",region_name="us-east-1") 11 | 12 | s3_con_cli=boto3.session.Session(profile_name="EC2_S3_IAM").client(service_name="s3",region_name="us-east-1") 13 | 14 | 15 | for each_bucket in s3_con_cli.list_buckets()['Buckets']: 16 | print each_bucket['Name'] 17 | 18 | --------------------------------------------------------------------------------