Actions, resources, and condition keys for AWS Elastic Beanstalk
AWS Elastic Beanstalk (service prefix:
elasticbeanstalk
) provides the following service-specific resources, actions, and condition context keys for use in IAM permission policies.
References:
-
Learn how to configure this service .
-
View a list of the API operations available for this service .
-
Learn how to secure this service and its resources by using IAM permission policies.
Topics
Actions defined by AWS Elastic Beanstalk
You can specify the following actions in the
Action
element of an IAM policy statement. Use policies to grant permissions to perform an operation in AWS. When you use an action in a policy, you usually allow or deny access to the API operation or CLI command with the same name. However, in some cases, a single action controls access to more than one operation. Alternatively, some operations require several different actions.
The
Resource types
column of the Actions table indicates whether each action supports resource-level permissions. If there is no value for this column, you must specify all resources ("*") to which the policy applies in the
Resource
element of your policy statement. If the column includes a resource type, then you can specify an ARN of that type in a statement with that action. If the action has one or more required resources, the caller must have permission to use the action with those resources. Required resources are indicated in the table with an asterisk (*). If you limit resource access with the
Resource
element in an IAM policy, you must include an ARN or pattern for each required resource type. Some actions support multiple resource types. If the resource type is optional (not indicated as required), then you can choose to use one of the optional resource types.
The
Condition keys
column of the Actions table includes keys that you can specify in a policy statement's
Condition
element. For more information on the condition keys that are associated with resources for the service, see the
Condition keys
column of the Resource types table.
For details about the columns in the following table, see Actions table .
| Actions | Description | Access level | Resource types (*required) | Condition keys | Dependent actions |
|---|---|---|---|---|---|
| AbortEnvironmentUpdate | Grants permission to cancel in-progress environment configuration update or application version deployment | Write | |||
| AddTags | Grants permission to add tags to an Elastic Beanstalk resource and to update tag values | Tagging | |||
| ApplyEnvironmentManagedAction | Grants permission to apply a scheduled managed action immediately | Write | |||
| AssociateEnvironmentOperationsRole | Grants permission to associate an operations role with an environment | Write | |||
| CheckDNSAvailability | Grants permission to check CNAME availability | Read | |||
| ComposeEnvironments | Grants permission to create or update a group of environments, each running a separate component of a single application | Write | |||
| CreateApplication | Grants permission to create a new application | Write | |||
| CreateApplicationVersion | Grants permission to create an application version for an application | Write | |||
| CreateConfigurationTemplate | Grants permission to create a configuration template | Write | |||
|
elasticbeanstalk:FromApplication elasticbeanstalk:FromApplicationVersion elasticbeanstalk:FromConfigurationTemplate elasticbeanstalk:FromEnvironment |
|||||
| CreateEnvironment | Grants permission to launch an environment for an application | Write | |||
|
elasticbeanstalk:FromApplicationVersion elasticbeanstalk:FromConfigurationTemplate |
|||||
| CreatePlatformVersion | Grants permission to create a new version of a custom platform | Write | |||
| CreateStorageLocation | Grants permission to create the Amazon S3 storage location for the account | Write | |||
| DeleteApplication | Grants permission to delete an application along with all associated versions and configurations | Write | |||
| DeleteApplicationVersion | Grants permission to delete an application version from an application | Write | |||
| DeleteConfigurationTemplate | Grants permission to delete a configuration template | Write | |||
| DeleteEnvironmentConfiguration | Grants permission to delete the draft configuration associated with the running environment | Write | |||
| DeletePlatformVersion | Grants permission to delete a version of a custom platform | Write | |||
| DescribeAccountAttributes | Grants permission to retrieve a list of account attributes, including resource quotas | Read | |||
| DescribeApplicationVersions | Grants permission to retrieve a list of application versions stored in an AWS Elastic Beanstalk storage bucket | List | |||
| DescribeApplications | Grants permission to retrieve the descriptions of existing applications | List | |||
| DescribeConfigurationOptions | Grants permission to retrieve descriptions of environment configuration options | Read | |||
| DescribeConfigurationSettings | Grants permission to retrieve a description of the settings for a configuration set | Read | |||
| DescribeEnvironmentHealth | Grants permission to retrieve information about the overall health of an environment | Read | |||
| DescribeEnvironmentManagedActionHistory | Grants permission to retrieve a list of an environment's completed and failed managed actions | Read | |||
| DescribeEnvironmentManagedActions | Grants permission to retrieve a list of an environment's upcoming and in-progress managed actions | Read | |||
| DescribeEnvironmentResources | Grants permission to retrieve a list of AWS resources for an environment | Read | |||
| DescribeEnvironments | Grants permission to retrieve descriptions for existing environments | List | |||
| DescribeEvents | Grants permission to retrieve a list of event descriptions matching a set of criteria | Read | |||
| DescribeInstancesHealth | Grants permission to retrieve more detailed information about the health of environment instances | Read | |||
| DescribePlatformVersion | Grants permission to retrieve a description of a platform version | Read | |||
| DisassociateEnvironmentOperationsRole | Grants permission to disassociate an operations role with an environment | Write | |||
| ListAvailableSolutionStacks | Grants permission to retrieve a list of the available solution stack names | List | |||
| ListPlatformBranches | Grants permission to retrieve a list of the available platform branches | List | |||
| ListPlatformVersions | Grants permission to retrieve a list of the available platforms | List | |||
| ListTagsForResource | Grants permission to retrieve a list of tags of an Elastic Beanstalk resource | Read | |||
| PutInstanceStatistics | Grants permission to submit instance statistics for enhanced health | Write | |||
| RebuildEnvironment | Grants permission to delete and recreate all of the AWS resources for an environment and to force a restart | Write | |||
| RemoveTags | Grants permission to remove tags from an Elastic Beanstalk resource | Tagging | |||
| RequestEnvironmentInfo | Grants permission to initiate a request to compile information of the deployed environment | Read | |||
| RestartAppServer | Grants permission to request an environment to restart the application container server running on each Amazon EC2 instance | Write | |||
| RetrieveEnvironmentInfo | Grants permission to retrieve the compiled information from a RequestEnvironmentInfo request | Read | |||
| SwapEnvironmentCNAMEs | Grants permission to swap the CNAMEs of two environments | Write | |||
| TerminateEnvironment | Grants permission to terminate an environment | Write | |||
| UpdateApplication | Grants permission to update an application with specified properties | Write | |||
| UpdateApplicationResourceLifecycle | Grants permission to update the application version lifecycle policy associated with the application | Write | |||
| UpdateApplicationVersion | Grants permission to update an application version with specified properties | Write | |||
| UpdateConfigurationTemplate | Grants permission to update a configuration template with specified properties or configuration option values | Write | |||
|
elasticbeanstalk:FromApplication elasticbeanstalk:FromApplicationVersion elasticbeanstalk:FromConfigurationTemplate elasticbeanstalk:FromEnvironment |
|||||
| UpdateEnvironment | Grants permission to update an environment | Write | |||
|
elasticbeanstalk:FromApplicationVersion elasticbeanstalk:FromConfigurationTemplate |
|||||
| UpdateTagsForResource | Grants permission to add tags to an Elastic Beanstalk resource, remove tags, and to update tag values | Tagging | |||
| ValidateConfigurationSettings | Grants permission to check the validity of a set of configuration settings for a configuration template or an environment | Read | |||
Resource types defined by AWS Elastic Beanstalk
The following resource types are defined by this service and can be used in the
Resource
element of IAM permission policy statements. Each action in the
Actions table
identifies the resource types that can be specified with that action. A resource type can also define which condition keys you can include in a policy. These keys are displayed in the last column of the Resource types table. For details about the columns in the following table, see
Resource types table
.
| Resource types | ARN | Condition keys |
|---|---|---|
| application |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}:$
{
Account}:application/$
{
ApplicationName}
|
|
| applicationversion |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}:$
{
Account}:applicationversion/$
{
ApplicationName}/$
{
VersionLabel}
|
|
| configurationtemplate |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}:$
{
Account}:configurationtemplate/$
{
ApplicationName}/$
{
TemplateName}
|
|
| environment |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}:$
{
Account}:environment/$
{
ApplicationName}/$
{
EnvironmentName}
|
|
| solutionstack |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}::solutionstack/$
{
SolutionStackName}
|
|
| platform |
arn:$
{
Partition}:elasticbeanstalk:$
{
Region}::platform/$
{
PlatformNameWithVersion}
|
Condition keys for AWS Elastic Beanstalk
AWS Elastic Beanstalk defines the following condition keys that can be used in the
Condition
element of an IAM policy. You can use these keys to further refine the conditions under which the policy statement applies. For details about the columns in the following table, see
Condition keys table
.
To view the global condition keys that are available to all services, see Available global condition keys .
| Condition keys | Description | Type |
|---|---|---|
| aws:RequestTag/${TagKey} | Filters actions based on the presence of tag key-value pairs in the request | String |
| aws:ResourceTag/${TagKey} | Filters actions based on tag key-value pairs attached to the resource | String |
| aws:TagKeys | Filters actions based on the presence of tag keys in the request | ArrayOfString |
| elasticbeanstalk:FromApplication | Filters access by an application as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:FromApplicationVersion | Filters access by an application version as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:FromConfigurationTemplate | Filters access by a configuration template as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:FromEnvironment | Filters access by an environment as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:FromPlatform | Filters access by a platform as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:FromSolutionStack | Filters access by a solution stack as a dependency or a constraint on an input parameter | ARN |
| elasticbeanstalk:InApplication | Filters access by the application that contains the resource that the action operates on | ARN |


Zindzi Griffin's Portfolio
Hi everyone, my name is Zindzi. I am a sophomore computer science major at Spelman College.
I am interested in software engineering and UX research. My main goals with studying computer science are to change the face of technology using my computing skills. I hope to bridge the gap between race and gender gap in the tech space and create a space that is more inclusive of everyone.
I started studying computer science because I was interested in problem-solving and how I can use computer science to solve issues.I love being able to express my creativity through computer science. I hope to inspire other young girls to study computer science.
Software Engineering Projects
Anagram: I created a GUI game vrsion of anagrams.
CareerGirls IOS mobile app: I helped create an IOS mobile app for an organization, Career Girls. The purpose of the app is to inspire young girls to pursue careers in STEM.
Click here to see content created by server code.
Linkedin GithubClick here to get a random message:
Server Example
Click this button to see a random message about butterflies.


This project is a work in progress for a next gen typescript based reimplementation of jsf.js/faces.js
The main goal is maintainability. It omits legacy browsers with Edge 14 and Ecmascript 2015 being the browser and ES baseline for the moment.
It uses functional constructs on micro scale to keep the maintainability and uses my own mona-dish project as core framework base, to avoid unnecessary colliding dependencies.
But it still uses classes modules and inheritance for code structuring. The reason for this is, I do not like the one function for all approach, especially given we have Typescript now as implementation language which allows a proper code structuring and modularization.
Webpack can take care of the packaging.
Having smaller code parts, makes it easier to test certain aspects of the implementation.
Also one additional aspect of the new implementation: it has a proper test coverage via Mocha based unit tests.
This was also severely lacking in my old implementation where I just ran a set of 20 integration tests on macro scale.
We now have a stable version! The current stable version (and first stable version is 4.0) Why 4.0 and not 1.0? The reason for this is, it is faces 4.0 compliant (but also faces 2.3 compliant) and also used in MyFaces 4.0. In order to avoid version confusion the projects stable version always will be in sync with the Faces implementation level it provides now and in the future.
Due to a small api change, if you want to embed the 4.0 version (faces.js) in your code, a new attribute specified by the Faces 4.0 spec is not set at its proper value, contextpath. This attribute atm is a value expression which needs to be set by the loading implementation.
Now if you want to provide your own embedded solution and you will have to set this value yourself. While my code does not use the attribute in the faces namespace, other libraries or the users might.
If you serve the code from MyFaces 4 instead of embedding it, the value will be preset by the internal resource loader.
The JSF 2.3 version (jsf.js) is not affected by this change, so nothing needs to be done. In fact the contextpath attribute is not present there. All other attributes behave the same in both versions as in the original legacy codebase.
It still is code complete and in bugfixing phase, for testing purposes it can be used (check the dist directory for builds, I consider stable enough for testing, or your own builds)
run
if not done yet
run
run
no_portlet_env is no more the configuration parameter 'no_portlet_env' has become obsolete with jsf 2.3 which introduced a proper namespaced viewstate handling so it is gone now
pps disabled for the moment
We had a special pps handling introduced in myfaces, a feature probably never used (you basically could reduce the parameters sent down by sending a list of pps ids). I have disabled it for the time being. The code still is in there for the moment, but will be dropped if no demand arises to enable it again.
In order to improve the maintainability I have dropped a lot of shim and legacy code which was needed to support old browsers. Since our main aim is long term maintainability there is a clear cut. The lowest supported browser for the moment is Edge 14.  This should suffice for most, if not all important environments. If you still use an older browser than Edge 14 you still can revert to the old codebase for the time being (final cutoff point probably will come within the next few years)
Given that we now have faster browsers and end user devices in the mobile area than 10 years ago and the spec conformity has improved a lot, my main focus was maintainability. Maintainability and readability now comes before performance. So I sacrificed some of the performance to achieve it. Given that the most critical performance hits do not happen in the ajax area this is a sacrifice I can live with, for the time being.
The client side i18n error message translations have become more of a liability than a feature. For the time being all client side errors are reported in english. I can reintroduce them, if there is real demand. But the size and maintainability tradeoff, compared to what they bring was not worth it to keep them anymore.
The original implementation had various builds to support easier debugging (split, combined, compressed)
We now have only two builds prod and development. However I have introduced a mapping file support. To enable this support you have to reference the FacesJSMappingDecorator unless the mapping file is reachable via the normal request (mapping files are bundled). This works for normal includes, but if you include the jsf.js in a resource library you have to use the decorator provided.
Usage faces-config.xml
<application>
<resource-handler>com.example.jsfs_js_ts.FacesJSMapFileResourceWrapper</resource-handler>
</application>
This resource decorator detects automatically a faces*.js file coming from a resource library and adjusts the references in the resource accordingly to the request patterns
Generated using TypeDoc


Angular Tags Input
Like Angular Tag Input?
Give our repo a star.
Star
@iomechs/angular-tags-input
Angular Tags Input
1. Input with subtypes and selected items are marked as tick
Hide dropdown on blur
Show parent tags only
Dropdown has backdrop
2. Custom nested component without showing tick on selected items.
2. Selected items will be hide from options list
3. Options to hide tick and items from list.
Hide tick
Show tooltip on Options
Hide items
Hide tags
Remove on click selected item
Clear input text onfocus
Don't create tag on enter
Value for simple data is required
4. Options with image
{{item[config.displayProperty]}}
{{item[config.displayProperty]}}


Installing Newtmgr on Linux¶
You can install the latest release (1.4.1) of the newtmgr tool from a Debian binary package (amd64). You can also download and build the latest release version of newtmgr from source.
This page shows you how to:
Set up your computer to download Debian binary packages from the runtimeco APT repository.
Note: The key for signing the repository has changed. If you set up your computer before release 1.1.0, you will need to download and import the public key again.
Install the latest release version of newtmgr from a Debian binary package. You can use apt-get to install the package or manually download and install the Debian binary package.
Download, build, and install the latest release version of newtmgr from source.
See Installing Previous Releases of Newtmgr to install an earlier version of newtmgr.
If you are installing on an amd64 platform, we recommend that you install from the binary package.
Note: We have tested the newtmgr tool binary and apt-get install from the runtimeco APT repository for Ubuntu version 16. Earlier Ubuntu versions (for example: Ubuntu 14) may have incompatibility with the repository. You can manually download and install the Debian binary package.
Note: See Contributing to Newt or Newtmgr Tools if you want to:
- Use the newtmgr tool with the latest updates from the master branch. The master branch may be unstable and we recommend that you use the latest stable release version.
- Contribute to the newtmgr tool.
Setting Up Your Computer to use apt-get to Install the Package¶
The newtmgr Debian packages are stored in a private APT repository on https://github/runtimeco/debian-mynewt. To use apt-get, you must set up the following on your computer to retrieve packages from the repository:
Note: You only need to perform this setup once on your computer. However, if you previously downloaded and imported the public key for the runtimeco APT repository, you will need to perform step 2 again as the key has changed.
- Install the
apt-transport-https
package to use HTTPS to retrieve packages. - Download the public key for the runtimeco APT repository and import the key into the apt keychain.
- Add the repository for the binary and source packages to the apt source list.
Install the apt-transport-https package:
$ sudo apt-get update $ sudo apt-get install apt-transport-https
Download the public key for the runtimeco apt repo (Note: There is a
-
afterapt-key add
):$ wget -qO - https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/mynewt.gpg.key | sudo apt-key add -
Add the repository for the binary packages to the
mynewt.list
apt source list file.$ sudo -s [sudo] password for <user>: root$ cat > /etc/apt/sources.list.d/mynewt.list <<EOF deb https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest main EOF root$ exit
Note: Do not forget to exit the root shell.
Verify the content of the source list file:
$ more /etc/apt/sources.list.d/mynewt.list deb https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest main
Update the available packages:
$ sudo apt-get update
Note: If you are not using Ubuntu version 16, you may see the following errors. We have provided instructions on how to manually download and install the binary package.
W: Failed to fetch https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/dists/latest/main/source/Sources HttpError404
Installing the Latest Release of Newtmgr from a Binary Package¶
You can use either apt-get to install the package, or manually download and install the Debian binary package.
Method 1: Using apt-get to Upgrade or to Install¶
Run the following commands to upgrade or install the latest version of newtmgr:
$ sudo apt-get update
$ sudo apt-get install newtmgr
Method 2: Downloading and Installing the Debian Package Manually¶
Download and install the package manually.
$ wget https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/pool/main/n/newtmgr/newtmgr_1.4.1-1_amd64.deb
$ sudo dpkg -i newtmgr_1.4.1-1_amd64.deb
See Checking the Latest Version of Newtmgr is Installed to verify that you are using the installed version of newtmgr.
Installing the Latest Release Version of Newtmgr from Source¶
If you are running Linux on a different architecture, you can build and install the latest release version of newtmgr from source.
Download and install the latest version of Go. Newtmgr requires Go version 1.7.6 or higher.
 Note thatgo get
pulls down the HEAD from the master branch in git, builds, and installs newtmgr.$ go get mynewt.apache.org/newtmgr/newtmgr $ ls -l /tmp/go/bin/newtmgr -rwxr-xr-x 1 user staff 17884488 Jul 29 16:25 /tmp/go/bin/newtmgr
Check out the source from the latest release version:
$ cd src/mynewt.apache.org/newtmgr $ git checkout mynewt_1_4_1_tag Note: checking out 'mynewt_1_4_1_tag'.
Build newtmgr from the latest release version:
$ cd newtmgr $ GO111MODULE=on go install $ ls /tmp/go/bin/newtmgr -rwxr-xr-x 1 user staff 17888680 Jul 29 16:28 /tmp/go/bin/newtmgr
If you have a Go workspace, remember to reset your GOPATH to your Go workspace.
Copy the newtmgr executable to a bin directory in your path. You can put it in the /usr/bin or the $GOPATH/bin directory.
Checking the Latest Version of Newtmgr is Installed¶
Run
which newtmgr
to verify that you are using the installed version of newtmgr.Get information about the newtmgr tool:
$ newtmgr Newtmgr helps you manage remote devices running the Mynewt OS Usage: newtmgr [flags] newtmgr [command] Available Commands: config Read or write a config value on a device conn Manage newtmgr connection profiles crash Send a crash command to a device datetime Manage datetime on a device echo Send data to a device and display the echoed back data fs Access files on a device help Help about any command image Manage images on a device log Manage logs on a device mpstat Read mempool statistics from a device reset Perform a soft reset of a device run Run test procedures on a device stat Read statistics from a device taskstat Read task statistics from a device Flags: -c, --conn string connection profile to use -h, --help help for newtmgr -l, --loglevel string log level to use (default "info") --name string name of target BLE device; overrides profile setting -t, --timeout float timeout in seconds (partial seconds allowed) (default 10) -r, --tries int total number of tries in case of timeout (default 1) Use "newtmgr [command] --help" for more information about a command.