iam

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 4, 2016 License: MIT Imports: 2 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AccessKey = Resource{
	AwsType: "AWS::IAM::AccessKey",

	Attributes: map[string]Schema{
		"SecretAccessKey": Schema{
			Type: ValueString,
		},
	},

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"Serial": Schema{
			Type: ValueNumber,
		},

		"Status": Schema{
			Type: EnumValue{
				Description: "Status",
				Options:     []string{"Active", "Inactive"},
			},
			Default: "Active",
		},

		"UserName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html

View Source
var Group = Resource{
	AwsType: "AWS::IAM::Group",

	Attributes: map[string]Schema{
		"Arn": Schema{
			Type: ARN,
		},
	},

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"ManagedPolicyArns": Schema{
			Type: Multiple(ARN),
		},

		"Path": Schema{
			Type: ValueString,
		},

		"Policies": Schema{
			Type: Multiple(policy),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html

View Source
var InstanceProfile = Resource{
	AwsType: "AWS::IAM::InstanceProfile",

	Attributes: map[string]Schema{
		"Arn": Schema{
			Type: ARN,
		},
	},

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"Path": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"Roles": Schema{
			Type:     Multiple(ValueString),
			Required: constraints.Always,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html

View Source
var ManagedPolicy = Resource{
	AwsType: "AWS::IAM::ManagedPolicy",

	ReturnValue: Schema{
		Type: ARN,
	},

	Properties: Properties{
		"Description": Schema{
			Type: ValueString,
		},

		"Groups": Schema{
			Type: Multiple(ValueString),
		},

		"Path": Schema{
			Type:    ValueString,
			Default: "/",
		},

		"PolicyDocument": Schema{
			Type:     JSON,
			Required: constraints.Always,
		},

		"Roles": Schema{
			Type: Multiple(ValueString),
		},

		"Users": Schema{
			Type: Multiple(ValueString),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html

View Source
var Policy = Resource{
	AwsType: "AWS::IAM::Policy",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"Groups": Schema{
			Type: Multiple(ValueString),
			Required: constraints.All{
				constraints.PropertyNotExists("Roles"),
				constraints.PropertyNotExists("Users"),
			},
		},

		"PolicyDocument": Schema{
			Type:     JSON,
			Required: constraints.Always,
		},

		"PolicyName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"Roles": Schema{
			Type: Multiple(ValueString),
			Required: constraints.All{
				constraints.PropertyNotExists("Groups"),
				constraints.PropertyNotExists("Users"),
			},
		},

		"Users": Schema{
			Type: Multiple(ValueString),
			Required: constraints.All{
				constraints.PropertyNotExists("Groups"),
				constraints.PropertyNotExists("Roles"),
			},
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html

View Source
var Role = Resource{
	AwsType: "AWS::IAM::Role",

	Attributes: map[string]Schema{
		"Arn": Schema{
			Type: ARN,
		},
	},

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"AssumeRolePolicyDocument": Schema{
			Type:     JSON,
			Required: constraints.Always,
		},

		"ManagedPolicyArns": Schema{
			Type: Multiple(ARN),
		},

		"Path": Schema{
			Type: ValueString,
		},

		"Policies": Schema{
			Type: Multiple(rolePolicy),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html

View Source
var User = Resource{
	AwsType: "AWS::IAM::User",

	Attributes: map[string]Schema{
		"Arn": Schema{
			Type: ARN,
		},
	},

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"Groups": Schema{
			Type: Multiple(ValueString),
		},

		"LoginProfile": Schema{
			Type: loginProfile,
		},

		"ManagedPolicyArns": Schema{
			Type: Multiple(ARN),
		},

		"Path": Schema{
			Type: ValueString,
		},

		"Policies": Schema{
			Type: Multiple(policy),
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html

View Source
var UserToGroupAddition = Resource{
	AwsType: "AWS::IAM::UserToGroupAddition",

	ReturnValue: Schema{
		Type: ValueString,
	},

	Properties: Properties{
		"GroupName": Schema{
			Type:     ValueString,
			Required: constraints.Always,
		},

		"Users": Schema{
			Type:     Multiple(ValueString),
			Required: constraints.Always,
		},
	},
}

see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL