Skip to content

Latest commit

 

History

History
573 lines (444 loc) · 17.1 KB

CHANGELOG.md

File metadata and controls

573 lines (444 loc) · 17.1 KB

angular-auth-oidc-client Changelog

2019-12-29 version 10.0.11

  • Added renew process denotation to AuthorizationResu

2019-10-07 version 10.0.10

  • bug fix logging, code flow callback

2019-10-05 version 10.0.9

  • generic OidcSecurityService.getUserData
  • OidcSecurityService with some observables
  • Do not check idToken nonce when using refreshToken
  • strictNullChecks
  • safer-silent-renew

2019-09-20 version 10.0.8

  • reduce size of the package

2019-09-11 version 10.0.7

  • Ability to change the amount of seconds for the IsAuthorizedRace to do a Timeout

2019-09-05 version 10.0.6

  • fixing url parse wo format
  • documentation fixes

2019-09-03 version 10.0.5

  • use_refresh_token configuration added.

2019-09-01 version 10.0.4

  • Added support for refresh tokens in code flow
  • expose logger service

2019-07-30 version 10.0.3

  • Added a try catch to handle the CORS error that is thrown if the parent has a different origin htne the iframe. Issue #466

2019-06-25 version 10.0.2

  • bug fix: onConfigurationLoaded does not fired
  • bug fix: [SSR] Session storage is not defined

2019-06-21 version 10.0.1

  • revert angular build to angular 7, fix npm dist

2019-05-24 version 10.0.0

  • remove silent_redirect_url only use silent_renew_url
  • refactored configuration for module, angular style
  • rename OpenIDImplicitFlowConfiguration to OpenIDConfiguration

Breaking changes

Before

this.oidcConfigService.onConfigurationLoaded.subscribe(() => {

	const openIDImplicitFlowConfiguration = new OpenIDImplicitFlowConfiguration();
	openIDImplicitFlowConfiguration.stsServer = this.oidcConfigService.clientConfiguration.stsServer;
	openIDImplicitFlowConfiguration.redirect_url = this.oidcConfigService.clientConfiguration.redirect_url;
	openIDImplicitFlowConfiguration.client_id = this.oidcConfigService.clientConfiguration.client_id;
	openIDImplicitFlowConfiguration.response_type = this.oidcConfigService.clientConfiguration.response_type;
	
	...
	
	configuration.FileServer = this.oidcConfigService.clientConfiguration.apiFileServer;
	configuration.Server = this.oidcConfigService.clientConfiguration.apiServer;

	const authWellKnownEndpoints = new AuthWellKnownEndpoints();
	authWellKnownEndpoints.setWellKnownEndpoints(this.oidcConfigService.wellKnownEndpoints);

	this.oidcSecurityService.setupModule(openIDImplicitFlowConfiguration, authWellKnownEndpoints);

After


import {
    AuthModule,
    OidcSecurityService,
    ConfigResult,
    OidcConfigService,
    OpenIdConfiguration
} from 'angular-auth-oidc-client';

export function loadConfig(oidcConfigService: OidcConfigService) {
    console.log('APP_INITIALIZER STARTING');
    return () => oidcConfigService.load(`${window.location.origin}/api/ClientAppSettings`);
}

@NgModule({
    imports: [
        ...
        HttpClientModule,
        AuthModule.forRoot(),
    ],
    providers: [
        OidcConfigService,
        OidcSecurityService,
        {
            provide: APP_INITIALIZER,
            useFactory: loadConfig,
            deps: [OidcConfigService],
            multi: true
        }
    ],
    bootstrap: [AppComponent],
})

export class AppModule {

    constructor(
        private oidcSecurityService: OidcSecurityService,
        private oidcConfigService: OidcConfigService,
    ) {

        this.oidcConfigService.onConfigurationLoaded.subscribe((configResult: ConfigResult) => {

            const config: OpenIdConfiguration = {
                stsServer: configResult.customConfig.stsServer,
                redirect_url: configResult.customConfig.redirect_url,
                client_id: configResult.customConfig.client_id,
                response_type: configResult.customConfig.response_type,
                scope: configResult.customConfig.scope,
                post_logout_redirect_uri: configResult.customConfig.post_logout_redirect_uri,
                start_checksession: configResult.customConfig.start_checksession,
                silent_renew: configResult.customConfig.silent_renew,
                silent_renew_url: configResult.customConfig.redirect_url + '/silent-renew.html',
                post_login_route: configResult.customConfig.startup_route,
                forbidden_route: configResult.customConfig.forbidden_route,
                unauthorized_route: configResult.customConfig.unauthorized_route,
                log_console_warning_active: configResult.customConfig.log_console_warning_active,
                log_console_debug_active: configResult.customConfig.log_console_debug_active,
                max_id_token_iat_offset_allowed_in_seconds: configResult.customConfig.max_id_token_iat_offset_allowed_in_seconds,
                history_cleanup_off: true
                // iss_validation_off: false
                // disable_iat_offset_validation: true
            };

            this.oidcSecurityService.setupModule(config, configResult.authWellknownEndpoints);
        });
    }
}

2019-05-21 version 9.0.8

  • authNonce not cleared in storage after unsuccessful login and logout
  • Should 5 seconds timeout on silent_renew be configurable? => fails fast now if server responds

2019-04-28 version 9.0.7

  • increased length of state value for OIDC authorize request

2019-04-22 version 9.0.6

  • session_state is optional for code flow

2019-04-14 version 9.0.5

  • Added disable_iat_offset_validation configuration for clients with clock problems
  • Updated the Docs

2019-03-29 version 9.0.4

  • Updated the Docs
  • Adding sample usage to repo

2019-03-22 version 9.0.3

  • Updated the Docs
  • Changed to Angular-CLI builder
  • Added a sample in this repo

2019-02-27 version 9.0.3

  • Add TokenHelperService to public API
  • logs: use !! to display getIdToken() and _userData.value in silentRenewHeartBeatCheck()

2019-02-01 version 9.0.2

  • bug fix at_hash is optional for code flow
  • removing session_state check from code flow response

2019-01-11 version 9.0.1

  • Validation state in code callback redirect
  • Make it possible to turn off history clean up, so that the angular state is preserved.

2019-01-08 version 9.0.0

  • Support for OpenID Connect Code Flow with PKCE

Breaking changes:

Implicit flow callback renamed from authorizedCallback() to authorizedImplicitFlowCallback()

2018-11-16 version 8.0.3

  • Changed iframe to avoid changing history state for repeated silent token renewals
  • make it possible to turn the iss validation off per configuration
  • reset history after OIDC callback with tokens

2018-11-07 version 8.0.2

  • When logOff() is called storage should be cleared before emitting an authorization event.
  • AuthConfiguration object will now always return false for start_checksession and silent_renew properties when not running on a browser platform.

2018-11-02 version 8.0.1

  • Adding an onConfigurationChange Observable to `OidcSecurityService

2018-10-31 version 8.0.0

  • replaced eventemitters with Subjects/Observables and updated and docs
  • Optional url handler for logoff function
  • silent_renew is now off by default (false).
  • Fix for when token contains multiple dashes or underscores

2018-10-20 version 7.0.3

  • Unicode special characters (accents and such) in JWT are now properly…

2018-10-20 version 7.0.2

  • authorizedCallback should wait until the module is setup before running.

2018-10-18 version 7.0.1

  • Check session will now be stopped when the user is logged out

2018-10-14 version 7.0.0

  • Adding validation state result info to authorization event result
  • bug fixes in check session

2018-10-07 version 6.0.12

  • Refactoring getIsAuthorized()
  • A blank session_state in the check session heartbeat should emit a …
  • Fixing inability to turn off silent_renew and adding safety timeout
  • check for valid tokens on start up

2018-10-03 version 6.0.11

  • silent_renew inconsistent with execution

2018-09-14 version 6.0.10

  • Handle callback params that contain equals char

2018-09-09 version 6.0.7

  • Removing the fetch package, using the httpClient now instead

2018-08-18 version 6.0.6

  • Add unique ending to key to prevent storage crossover
  • Public resetAuthorizationData method and getEndSessionUrl function
  • wso2 Identity Server audience validation failed support

2018-07-09 version 6.0.2

  • Throw error when userinfo_endpoint is not defined (Azure AD)

2018-06-03 version 6.0.1

  • Removing resource propety from the config, not used.
  • fixing silent renew bug

2018-05-05 version 6.0.0

  • Updating src to support rxjs 6.1.0, Angular 6.0.0

2018-04-31 version 4.1.1

  • Updating src to support typescript 2.7.2

2018-03-31 version 4.1.0

  • Lightweight silent renew

2018-03-05 version 4.0.3

  • added optional url handler parameter in the authorize function.

2018-02-23 version 4.0.2

  • returning bool event from config service

2018-02-03 version 4.0.1

  • silent renew fixes
  • check session renew fixes
  • adding error handling to config service, used for the APP_INITIALIZER

2018-01-15 version 4.0.0

  • fixing init process, using APP_INITIALIZER, and proper support for angular guards
  • removed override_well_known_configuration, well_known_configuration now loaded from the APP_INITIALIZER
  • removed override_well_known_configuration_url, well_known_configuration now loaded from the APP_INITIALIZER

If you want to configure the well known endpoints locally, you need to set this to true.

override_well_known_configuration_url

2018-01-08 version 3.0.13

  • fixing rollup build

2018-01-06 version 3.0.12

  • adding a check session event
  • adding onAuthorizationResult for the silent renew event
  • onAuthorizationResult is always sent now
  • no redirects are triggered for silent renews

2018-01-01 version 3.0.11

  • bug fix incorrect user data type

2017-12-31 version 3.0.10

  • bug fix silent renew error handling

2017-12-15 version 3.0.9

  • bug fix aud string arrays not supported
  • bug fix user data set from id_token, when oidc user api is not supported
  • code clean up, package size

2017-12-10 version 3.0.8

  • bug fix, rxjs imports

2017-12-10 version 3.0.7

  • bug fix, rxjs imports

2017-12-10 version 3.0.6

  • using lettable operators rxjs
  • bug fix, check session

2017-11-06 version 3.0.5

  • refreshSession is now public

2017-11-06 version 3.0.4

  • isAuthorized does not working on refresh

2017-11-03 version 3.0.3

  • Add prompt= none to silent renew, according to the spec: in fact some op do not refresh the token in the absence of it. Related to: #14
  • Fix the starting of silent renew and check session after the authWellKnownEndpoint has been loaded, to avoid an undefined router (they use its info)
  • Fix(building): public api exports

2017-10-26 version 3.0.2

  • fix: adding additional URL parameters to the authorize request in IE, Edge
  • documentation HTTPClient intercept

2017-10-21 version 3.0.1

  • fixing peer dependency bug

2017-10-21 version 3.0.0

  • Update to HttpClient

2017-10-20 version 2.0.1

  • Removing forChild function, not used

2017-10-20 version 2.0.0

  • Renaming startup_route to post_login_route
  • setting better default values for the configuration
  • Documentation fixes

2017-10-15 version 1.3.19

2017-10-05 version 1.3.18

  • fix: Local Storage session_state undefined parse error

2017-10-03 version 1.3.17

  • fix: silent renew fix after refresh

2017-09-26 version 1.3.16

  • fix: OidcSecurityService emits onModuleSetup before authWellKnownEndpoints are loaded

2017-09-06 version 1.3.15

  • fix: if auto_userinfo is false, we still need to execute runTokenValidation

2017-09-03 version 1.3.14

  • Add silent_renew_offset_in_seconds option

2017-09-01 version 1.3.13

  • Add option to trigger event on authorization resolution instead of automatic redirect

2017-08-27 version 1.3.12

  • Throws Exception when the library is used in an application inside a iframe (cross domain)

2017-08-20 version 1.3.11

  • updating jsrasign

2017-08-15 version 1.3.9

  • endsession support for custom parameters

2017-08-13 version 1.3.8

  • auto_clean_state_after_authentication which can be used for custom state logic handling

2017-08-11 version 1.3.7

  • support for hash routes

2017-08-11 version 1.3.6

  • support for custom authorization strings like Azure Active Directory B2C

2017-08-09 version 1.3.4

  • Fix authorization url construction

2017-08-09 version 1.3.3

  • adding moduleSetup boolean so that the authorization callback can wait until the module is ready

2017-08-09 version 1.3.2

  • API new function for get id_token
  • API new function for get user info
  • user info configuration for auto get user info after login
  • API custom request params can be added to the authorization request URL using the setCustomRequestParameters function

2017-07-21 version 1.3.1

  • bugfix error handling
  • bugfix configuration default values

2017-07-21 version 1.3.0

  • bugfix refresh isAuthorized
  • bugfix refresh user data

2017-07-19 version 1.2.2

  • support reading json file configurations

2017-07-12 version 1.2.1

  • Fix types in storage class

2017-07-06 version 1.2.0

  • support for SSR
  • support for custom storage

2017-07-06 version 1.1.4

  • bugfix server side rendering, null check for storage

2017-07-01 version 1.1.3

  • clean up session management
  • bugfix Silent token renew fails on state validation

2017-07-01 version 1.1.2

  • API documentation

2017-06-28 version 1.1.1

  • refactor init of module

2017-06-28 version 1.0.8

  • setStorage method added
  • bug fix well known endpoints loaded logout.

2017-06-28 version 1.0.6

  • Event for well known endpoints loaded
  • storage is can be set per function

2017-06-27 version 1.0.5

  • Adding support for server rendering in Angular
  • storage can be set now

2017-06-23 version 1.0.3

  • updating validation messages

2017-06-21 version 1.0.2

  • Bug fix no kid validation withe single, multiple jwks headers

2017-06-20 version 1.0.1

  • Bug fix validation

2017-06-20 version 1.0.0

  • Version for OpenID Certification
  • support for decoded tokens

2017-06-20 version 0.0.11

  • Adding a resource configuration

2017-06-17 version 0.0.10

  • Validating kid in id_token header

2017-06-17 version 0.0.9

  • remove manual dependency to jsrasign

2017-06-15 version 0.0.8

  • build clean up
  • new configuration override for well known endpoints.

2017-06-14 version 0.0.7

  • validate user data sub value

2017-06-14

  • id_token flow
  • fixed rollup build

2017-06-13

  • Adding some docs to the project

2017-06-13

  • init