Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added credential lifetime column.
Section
Column
width64%

Identity Federation for AWS is a foundational Amazon Web Services (AWS) integration add-on that provides Temporary AWS Security Credentials to Atlassian groups and enables access control to AWS Resources via Identity and Access Management (IAM) Policies – from a technical perspective it implements an Identity Broker/Token Vendor that uses the Atlassian Authentication System (Crowd) to Grant Access to AWS Resources.

Column
width32%
Panel
bgColor#eeeeee

On this page:

Table of Contents

...

Info
titleCapabilities and Restrictions

Each Principal Type has different capabilities and restrictions regarding Single Sign-On (SSO) to the AWS Management Console, Multi-Factor Authentication (MFA) and calling the IAM and STS APIs in turn, see Comparing Features of AWS STS APIs for details.

 Principal TypeAWS DocumentationAPI actionCredential lifetime (min/max/default)Notes
(tick)Federated UserTemporary Security Credentials to Enable Access for Federated UsersGetFederationToken

IAM user: 15m/36hr/12hr

Root account: 15m/1hr/1hr

 
(tick)IAM UserTemporary Security Credentials to Enable Access for IAM UsersGetSessionToken

IAM user: 15m/36hr/12hr

Root account: 15m/1hr/1hr

 
(tick)IAM RoleTemporary Security Credentials for Delegating API AccessAssumeRole15m/1hr/1hr

 

(error)SAML FederationTemporary Security Credentials for SAML FederationAssumeRoleWithSAML15m/1hr/1hrSupport for SAML is not on our roadmap, see the resp. FAQ for details

...

In order to enable the desired access to your AWS resources, you need to create at least one AWS Connector. You can access this functionality via the AWS Connectors management screen:

Image RemovedImage Added

Create/Edit Connector

Clicking Create Connector (or Edit later on) opens the Edit AWS Connector dialog:

Image RemovedImage Added

Here are the required steps:

  1. Select the account to use (you might need to add accounts first)
  2. Choose this Connector's name
  3. Choose the Principal Type - there are the following choices currently:

    Include Page
    _PrincipalTypesTable
    _PrincipalTypesTable

     

  4. (Optional) Add an IAM Policy (only available for principal types Federated User and Assume Role)
  5. (Optional) Set the maximum number of seconds temporary credentials based on this connector can be valid - leave empty to use AWS default values
  6. (Optional) Grant the permission to use this Connector to one or more of your JIRA or Bamboo groups

    Info

    Administrators always have permission to use all Connectors.

    Image Added


    1. click into the selection box to search for groups
      • (info) Bamboo < 5.6 and JIRA < 6.2 feature a different user interface for group selection still, see
        Jira Legacy
        serverJIRA (utoolity.atlassian.net)
        columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
        serverIdfac61c2e-db0a-39da-bb3c-e0dc0ef556f0
        keyUAA-89
        for details.
    1. if there are up to 100 groups, they show up immediately
    2. if there are more than 100 groups, you need to type at least one character to make all matching groups appear
      • (warning) depending on the number of groups and naming scheme, frequently used characters like 'e' might still yield slightly sluggish behavior (depends on browser and system performance etc.), see below in case
    3. you can type more characters to filter down the search result - typing quickly should circumvent sluggishness with a very large number of groups, if any
    4. select each desired group
      • (warning) all changes persist on save of the connector only

  7. (Optional) Select System Scope to allow usage of this AWS Connector from elevated code without an active user session (e.g. by another add-on like Tasks for AWS).

...

Clicking Create Account (or Edit later on) opens the Edit Account (IAM User) dialog:

Image RemovedImage Added

Configuring an AWS Connector with (optional) IAM Policy and Atlassian user group selection

Once you have added at least one account (see above) you can configure an arbitrary number of AWS Connectors using these. A Connector requires an arbitrary name according to your needs, the account to use and an (optional) IAM Policy, see Overview of Policies. You can reuse existing policies already in use in your organization or create new policies tailored to your use case via the AWS Policy Generator.

While not required, you might want to grant one or more of your Atlassian user groups the permission to use the AWS Connector (if no group is selected, only administrators will be able to use it).

Image RemovedImage Added

IAM Policy Examples

Clicking on 'IAM Policy Examples' allows you to select from a few example policies to ease getting started (just click one to copy it to the policy field) - links to the AWS Policy Generator and the IAM Policy Simulator are also provided:

Image RemovedImage Added

Advanced Topics

...