def lambda_handler(event, context): profile_name=event['headers']['profile'] #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) iam=boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str(ref.get()['secret_access_key'])) roles=iam.list_roles() roleslist=[] for role in roles['Roles']: name=role['RoleName'] description=role['Description'] roleslist.append({"Name":name}) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({ "roles":roleslist }), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name=str(event['queryStringParameters']['profile']) os=str(event['queryStringParameters']['os']) instance_type=str(event['queryStringParameters']['instance_type']) count=str(event['queryStringParameters']['count']) keyname=str(event['queryStringParameters']['keyname']) app=str(event['queryStringParameters']['app']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) ec2=boto3.client('ec2', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str(ref.get()['secret_access_key'])) ec2.run_instances( ImageId=str(osdict[str(os)]), InstanceType=str(instance_type),MaxCount=int(count), MinCount=int(count),KeyName=str(keyname),UserData=userdatadict[app]) #print(buckets) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({ "instance ran successfully":os }), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name=event['headers']['profile'] bucket_name=str(event['pathParameters']['bucket_name']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) s3=boto3.client('s3', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str(ref.get()['secret_access_key'])) s3.delete_bucket(Bucket=str(bucket_name)) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({ 'Successful': "Bucket deleted " }), "isBase64Encoded": False } #s3.create_bucket(Bucket=str(bucket_name), CreateBucketConfiguration={'LocationConstraint': 'ap-south-1'})
def lambda_handler(event, context): profile_name = event['headers']['profile'] ref = fa.getReference(profile_name) s3 = boto3.client('s3', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) buckets = s3.list_buckets() bucketlist = [] for i in buckets['Buckets']: bucket = i['Name'] bucketlist.append(bucket) #print(buckets) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({'response': bucketlist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = str(event['queryStringParameters']['profile']) instance_id = str(event['pathParameters']['instance_id']) running_state = str(event['pathParameters']['running_state']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) response = "" ec2 = boto3.client('ec2', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) if (str(running_state) == "running"): ec2.start_instances(InstanceIds=[str(instance_id)]) response = "Server" + instance_id + "Started" elif (str(running_state) == "stopped"): ec2.stop_instances(InstanceIds=[str(instance_id)]) response = "Server" + instance_id + "stopped" return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"Status": response}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = str(event['queryStringParameters']['profile']) bucket_name = str(event['pathParameters']['bucket_name']) ref = fa.getReference(profile_name) s3 = boto3.client('s3', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) objectlist = [] objects = s3.list_objects_v2(Bucket=str(bucket_name)) print(objects) if (objects['KeyCount'] != 0): for object in objects['Contents']: objectlist.append(object['Key']) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({bucket_name: objectlist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = str(event['queryStringParameters']['profile']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) iam = boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) groups = iam.list_groups() grouplist = [] for group in groups['Groups']: name = group['GroupName'] arn = group['Arn'] grouplist.append({"Name": name, "ARN": arn}) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"groups": grouplist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = event['headers']['profile'] ref = fa.getReference(profile_name) ec2 = boto3.client('ec2', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) keypairdict = {} keypairlist = [] keypairs = ec2.describe_key_pairs() for keypair in keypairs['KeyPairs']: keypairlist.append(keypair['KeyName']) #print(buckets) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"keypairs": keypairlist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = event['headers']['profile'] #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) iam = boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) userdict = {} count = 0 users = iam.list_users() userlist = [] print(users) for user in users['Users']: count += 1 name = user['UserName'] userid = "user" + str(count) userlist.append({"Username": name}) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"users": userlist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = str(event['queryStringParameters']['profile']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) ec2 = boto3.client('ec2', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) serverdict = {} serverlist = [] count = 0 servers = ec2.describe_instances() for reservation in servers['Reservations']: for inst in reservation['Instances']: count += 1 name = inst['InstanceId'] state = inst['State']['Name'] print(name) print(state) serverid = "server" + str(count) serverlist.append({"instance id": name, "state": state}) #print(buckets) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"servers": serverlist}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = event['headers']['profile'] user_name = str(event['pathParameters']['user_name']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) iam = boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) iam.delete_user(UserName=str(user_name)) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"user Deleted": user_name}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name=str(event['queryStringParameters']['profile']) group_name=str(event['pathParameters']['group_name']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) iam=boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str(ref.get()['secret_access_key'])) group_details=iam.get_group( GroupName=str(group_name) ) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({ "group Details":str(group_details) }), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = str(event['queryStringParameters']['profile']) #profile_name = str(event["profile"]) #profile_name = str(event['params']['querystring']['profile']) ref = fa.getReference(profile_name) s3 = boto3.client('s3', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) buckets = s3.list_buckets() bucketlist = [] for i in buckets['Buckets']: bucket = i['Name'] bucketlist.append(bucket) objectdict = {} for i in buckets['Buckets']: bucket = i['Name'] bucketlist.append(bucket) for bucket in bucketlist: print(bucket) objectlist = [] objects = s3.list_objects(Bucket=str(bucket)) print(objects) for object in objects['Contents']: objectlist.append(object['Key']) objectdict.update({bucket: objectlist}) #print(buckets) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({objectdict}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = event['headers']['profile'] instance_id = str(event['pathParameters']['instance_id']) ref = fa.getReference(profile_name) ec2 = boto3.client('ec2', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) ec2.terminate_instances(InstanceIds=[str(instance_id)]) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({"server Terminated": instance_id}), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name=event['headers']['profile'] body=json.loads(str(event['body'])) group_name=body['group_name'] ref = fa.getReference(profile_name) iam=boto3.client('iam', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str(ref.get()['secret_access_key'])) iam.create_group(GroupName=str(group_name)) return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, 'body': json.dumps({ "group Created":group_name }), "isBase64Encoded": False }
def lambda_handler(event, context): profile_name = event['headers']['profile'] ref = fa.getReference(profile_name) template = '''{ "AWSTemplateFormatVersion" : "2010-09-09", "Description" : "AWS CloudFormation Template Description", "Resources" : { } }''' cfn = boto3.client('cloudformation', region_name=str(ref.get()['region']), aws_access_key_id=str(ref.get()['access_key']), aws_secret_access_key=str( ref.get()['secret_access_key'])) s3_bucket_type = "AWS::S3::Bucket" iam_user_type = "AWS::IAM::User" iam_group_type = "AWS::IAM::Group" stack = json.loads(template) resources = stack["Resources"] body = json.loads(str(event["body"])) resourcetypes = { "S3Bucket": s3_bucket_type, "IAMUser": iam_user_type, "IAMGroup": iam_group_type } def gettype(res_type): return resourcetypes.get(res_type, "nothing") for resource in body: resource_name = resource["resource_name"] print(resource_name) resource_type = gettype(resource["resource_type"]) print(resource_type) subdict = {"Properties": {}} subdict["Type"] = resource_type for property in resource["Properties"]: subdict["Properties"].update({ property: resource["Properties"][property] } ## unsual jugaad but need to use it as I dont know the amount of properties that may come ) #print(property) #print(resource["Properties"][property])## unsual jugaad but need to use it as I dont know the amount of properties that may come print(subdict) resources.update({resource_name: subdict}) j = json.dumps(stack, indent=4) cfn.create_stack(StackName="test", TemplateBody=str(j), OnFailure='ROLLBACK', EnableTerminationProtection=True, Capabilities=['CAPABILITY_NAMED_IAM']) return {'statusCode': 200, 'body': j}