Skip to content

Releases: cloudfoundry/uaa

UAA 3.3.0.1 - Security Release (CVE-2016-3084)

27 May 23:09
Compare
Choose a tag to compare

UAA 3.3.0 Release Notes

10 May 18:59
Compare
Choose a tag to compare

New Features

Generic OpenID Connect Relying Party Support

UAA now supports federating to an OpenID Connect 1.0 compliant Identity Provider in addition to SAML 2.0 providers.
The OpenID Connect IDP can be bootstrapped from the manifest by setting the properties below. The Identity Provider API can also be used to manage the provider. Please refer to the docs here

login.oauth.providers:
    description: "Contains a hash of OpenID Connect/Oauth Identity Providers, the key will be used as the origin key for that provider, followed by key/value pairs. Presence of the userInfoUrl will mark it as an OpenID provider instead of OAuth."
    example:
      my-oauth-provider:
        type: oidc1.0
        authUrl: <URL to the authorize endpoint of the provider>
        tokenUrl: <URL to the token endpoint of the provider>
        tokenKey: <Token verification key>
        tokenKeyUrl: <URL for token verification. Will be used if tokenKey is not specified.>
        scopes:
          - openid
          - <other scope>
        linkText: My Oauth Provider
        showLinkText: true
        addShadowUserOnLogin: true
        relyingPartyId: <OIDC Client ID>
        relyingPartySecret: <OIDC Client secret>
        skipSslValidation: false
        attributeMappings:
          given_name: <Attribute holding given name in the OIDC ID Token>
          family_name: <Attribute holding family name in the OIDC ID Token>
          user_name: <Attribute holding username in the OIDC ID Token>
          external_groups:
            - <attribute holding roles or group memberships in the OIDC id_token>
            - <other attribute holding roles or group memberships in the OIDC id_token>
          user:
            attribute:
              name-of-attribute-in-uaa-id-token: name-of-attribute-in-provider-token
              name-of-other-attribute-in-uaa-id-token: name-of-other-attribute-in-provider-token

Related Stories
Revocable Tokens

UAA now supports revocable tokens. A new token type of opaque has been added in addition to JWT tokens.
Both JWT and Opaque tokens are revocable. The revocability of the JWT tokens is configurable per Identity Zone and is turned off by default.

 uaa.jwt.revocable:
    default: false
Related Stories
JWT Key Rotation

UAA now supports specifying multiple signing and verification keys as part of the Identity Zone configuration. We have introduced the mechanism to pass Key ID in the JWT Token Header. The token_key endpoint reflects the active signing key and the token_keys end-point reflects all the verification keys. Please refer to the corresponding APIs here

Related Stories
Spring REST Documentation for UAA APIs

We have begun the work to migrate the UAA API docs to Spring REST docs. The new documentation can be found here

Related Stories
Other minor features

Bugs Fixes

UAA 3.2.1 - Security Release (CVE-2016-0781)

25 Mar 01:29
Compare
Choose a tag to compare

UAA 3.2.0 Release Notes

16 Mar 19:21
Compare
Choose a tag to compare

New Features

Features In Progress

Bugs Fixes

UAA 2.7.4.1 - Hot-fix Release

26 Feb 19:05
Compare
Choose a tag to compare

This release addresses a UAA startup issue for customers using the LDAP user store when they upgrade from UAA 2.X.X to 2.7.4

UAA 3.1.0 Release Notes

26 Feb 20:52
Compare
Choose a tag to compare

Branding & White-labeling

We have introduced properties for branding the UAA UI Pages. The default branding is Cloud Foundry. We have also updated the Cloud Foundry brand to the latest. All Pivotal specific assets & stylesheets have been removed from the UAA repository.

Below is the branding snippet from UAA.yml for setting the branding properties. These properties can be bootstrapped from UAA.yml & UAA Release Manifest (if using the UAA Bosh Release)

branding:
  companyName: <Company Name>
  productLogo: <Enter base64 Encoded Image>
  squareLogo: <Enter base64 Encoded Image>
  footerLegalText: <This legal text will show up in the footer.>
  footerLinks:
    Terms: /exampleTerms
    Privacy Agreement: privacy_example.html
    Licensing: http://example.com/ 
Related Stories

Dynamic Home Page for UAA

This release drops support for login.tile property which has a static list of tiles displayed under the "Where To"page.
We have added the ability for the "Where To" Page in UAA to be created dynamically based on OAuth Clients registered with UAA and configured to be displayed on the home page. This serves as a dynamic SSO Dashboard for all Identity Zones.

New end-points (oauth/clients/meta) have been introduced to set Launch URL, Display Icon and Show On Home Page property. These properties can be bootstrapped from the UAA.yml file & UAA Release Manifest (if using the UAA Bosh Release)

# Clients
  uaa.clients:
    description: "List of OAuth2 clients that the UAA will be bootstrapped with"
    example:
      login:
        id: <test-client>
        name: <display_name>
        override: true
        secret: some-secret
        authorized-grant-types: authorization_code,client_credentials,refresh_token
        authorities: test_resource.test_action
        scope: test_resource.test_action
        redirect-uri: http://myapp.com/oauth
        app-launch-url: http://myapp.com
        show-on-homepage: true
        app-icon: <Enter base64 encoded image>
Related Stories

Descriptions for SCIM Groups & Identity Providers

We have added support for setting user friendly display names for SCIM groups & Identity Providers. The API's have been updated to support this operation. The behavior earlier was to set the description for SCIM groups aka OAuth Scopes in message.properties file. This can now be bootstrapped from UAA.yml & UAA-Release Manifest (if using the UAA Bosh Release)

Below is a snippet from UAA.yml

scim:
  groups:
    zones.read: Read identity zones
    zones.write: Create and update identity zones
    idps.read: Retrieve identity providers
    idps.write: Create and update identity providers
    clients.admin: Create, modify and delete OAuth clients
    clients.write: Create and modify OAuth clients
    clients.read: Read information about OAuth clients
    clients.secret: Change the password of an OAuth client
Related Stories

Other Minor Features

Bug Fixes

UAA 3.0.1 - Security Release (CVE-2016-0732)

02 Feb 18:53
Compare
Choose a tag to compare

UAA 2.7.4 - Security Release (CVE-2016-0732)

02 Feb 18:54
Compare
Choose a tag to compare

UAA 3.0.0

19 Jan 19:25
Compare
Choose a tag to compare

UAA 3.0.0 introduces breaking changes in form of restructuring of the code base, updating dependencies producing new module libraries.

Objects that are payload entities for rest controllers have been moved to the cloudfoundry-identity-model module.

The server side modules have been combined into cloudfoundry-identity-server.

Overview of our modules
  1. cloudfoundry-identity-model - data objects that are used as arguments for the API controllers on the UAA
  2. cloudfoundry-identity-client-lib - module to hold future client side API libraries for administering a UAA
  3. cloudfoundry-identity-server - all server side code
  4. cloudfoundry-identity-uaa - web application archive, WAR module for the UAA server
List of Deleted Classes

common/src/main/java/org/cloudfoundry/identity/uaa/error/JsonAwareAccessDeniedHandler.java
common/src/main/java/org/cloudfoundry/identity/uaa/error/JsonAwareAuthenticationEntryPoint.java
common/src/main/java/org/cloudfoundry/identity/uaa/login/util/FileLocator.java
common/src/main/java/org/cloudfoundry/identity/uaa/oauth/JitClientDetailsService.java
common/src/main/java/org/cloudfoundry/identity/uaa/oauth/NoSuchTokenException.java
common/src/main/java/org/cloudfoundry/identity/uaa/oauth/UaaAuthenticationKeyGenerator.java
common/src/main/java/org/cloudfoundry/identity/uaa/oauth/UaaUserTokenConverter.java
common/src/main/java/org/cloudfoundry/identity/uaa/oauth/UserTokenConverter.java
common/src/test/java/org/cloudfoundry/identity/uaa/authentication/login/PromptEditorTests.java
common/src/test/java/org/cloudfoundry/identity/uaa/authentication/login/PromptTests.java
common/src/test/java/org/cloudfoundry/identity/uaa/error/JsonAwareAccessDeniedHandlerTests.java
common/src/test/java/org/cloudfoundry/identity/uaa/error/JsonAwareAuthenticationEntryPointTests.java
common/src/test/java/org/cloudfoundry/identity/uaa/oauth/UaaAuthenticationKeyGeneratorTests.java
common/src/test/java/org/cloudfoundry/identity/uaa/oauth/UaaUserTokenConverterTests.java
login/src/main/java/org/cloudfoundry/identity/uaa/login/AbstractControllerInfo.java
login/src/main/java/org/cloudfoundry/identity/uaa/login/AnalyticsInterceptor.java
login/src/main/java/org/cloudfoundry/identity/uaa/login/ClientInfoAuthenticationFilter.java
login/src/main/java/org/cloudfoundry/identity/uaa/login/LinkedMaskingMultiValueMap.java
login/src/main/java/org/cloudfoundry/identity/uaa/login/util/IndirectBeanCreator.java
login/src/main/java/org/cloudfoundry/identity/web/Prompt.java
login/src/test/java/org/cloudfoundry/identity/uaa/login/LinkedMaskingMultiValueMapTests.java
login/src/test/java/org/cloudfoundry/identity/web/PromptTest.java

New Features
Bug Fixes

2.7.3 Release Notes

01 Dec 19:28
Compare
Choose a tag to compare

This release fixes a backwards incompatibility issue with the allowUnverifiedUsers flag. As part of the previous release, unverified users in any zone other than the default (uaa) zone would not be allowed to log in irrespective of what the flag was set to. This change has now been reverted and the allowUnverifiedUsers applies to all zones again.