angular-auth-oidc-client
Version:
An OpenID Connect Code Flow with PKCE,Implicit Flow client for Angular
90 lines (89 loc) • 4.59 kB
TypeScript
import { HttpClient } from '@angular/common/http';
import { NgZone } from '@angular/core';
import { Router } from '@angular/router';
import { Observable } from 'rxjs';
import { OidcDataService } from '../data-services/oidc-data.service';
import { OpenIdConfiguration } from '../models/auth.configuration';
import { AuthWellKnownEndpoints } from '../models/auth.well-known-endpoints';
import { AuthorizationResult } from '../models/authorization-result';
import { ConfigurationProvider } from './auth-configuration.provider';
import { StateValidationService } from './oidc-security-state-validation.service';
import { TokenHelperService } from './oidc-token-helper.service';
import { LoggerService } from './oidc.logger.service';
import { OidcSecurityCheckSession } from './oidc.security.check-session';
import { OidcSecurityCommon } from './oidc.security.common';
import { OidcSecuritySilentRenew } from './oidc.security.silent-renew';
import { OidcSecurityUserService } from './oidc.security.user-service';
import { OidcSecurityValidation } from './oidc.security.validation';
export declare class OidcSecurityService {
private oidcDataService;
private stateValidationService;
private router;
private oidcSecurityCheckSession;
private oidcSecuritySilentRenew;
private oidcSecurityUserService;
private oidcSecurityCommon;
private oidcSecurityValidation;
private tokenHelperService;
private loggerService;
private zone;
private readonly httpClient;
private readonly configurationProvider;
private _onModuleSetup;
private _onCheckSessionChanged;
private _onAuthorizationResult;
readonly onModuleSetup: Observable<boolean>;
readonly onAuthorizationResult: Observable<AuthorizationResult>;
readonly onCheckSessionChanged: Observable<boolean>;
readonly onConfigurationChange: Observable<OpenIdConfiguration>;
checkSessionChanged: boolean;
moduleSetup: boolean;
private _isModuleSetup;
private _isAuthorized;
private _isSetupAndAuthorized;
private _userData;
private authWellKnownEndpointsLoaded;
private runTokenValidationRunning;
private _scheduledHeartBeat;
private boundSilentRenewEvent;
constructor(oidcDataService: OidcDataService, stateValidationService: StateValidationService, router: Router, oidcSecurityCheckSession: OidcSecurityCheckSession, oidcSecuritySilentRenew: OidcSecuritySilentRenew, oidcSecurityUserService: OidcSecurityUserService, oidcSecurityCommon: OidcSecurityCommon, oidcSecurityValidation: OidcSecurityValidation, tokenHelperService: TokenHelperService, loggerService: LoggerService, zone: NgZone, httpClient: HttpClient, configurationProvider: ConfigurationProvider);
setupModule(openIdConfiguration: OpenIdConfiguration, authWellKnownEndpoints: AuthWellKnownEndpoints): void;
getUserData(): Observable<any>;
getIsModuleSetup(): Observable<boolean>;
getIsAuthorized(): Observable<boolean>;
getToken(): string;
getIdToken(): string;
getPayloadFromIdToken(encode?: boolean): any;
setState(state: string): void;
getState(): string;
setCustomRequestParameters(params: {
[key: string]: string | number | boolean;
}): void;
authorize(urlHandler?: (url: string) => any): void;
authorizedCallbackWithCode(urlToCheck: string): void;
requestTokensWithCode(code: string, state: string, session_state: string | null): void;
requestTokensWithCodeProcedure(code: string, state: string, session_state: string | null): void;
private authorizedCodeFlowCallbackProcedure;
private authorizedImplicitFlowCallbackProcedure;
authorizedImplicitFlowCallback(hash?: string): void;
private redirectTo;
private authorizedCallbackProcedure;
getUserinfo(isRenewProcess?: boolean, result?: any, id_token?: any, decoded_id_token?: any): Observable<boolean>;
logoff(urlHandler?: (url: string) => any): void;
refreshSession(): Observable<any>;
handleError(error: any): void;
startCheckingSilentRenew(): void;
stopCheckingSilentRenew(): void;
resetAuthorizationData(isRenewProcess: boolean): void;
getEndSessionUrl(): string | undefined;
private getValidatedStateResult;
private setUserData;
private setIsAuthorized;
private setAuthorizationData;
private createAuthorizeUrl;
private createEndSessionUrl;
private getSigningKeys;
private handleErrorGetSigningKeys;
private runTokenValidation;
private silentRenewEventHandler;
}