/opt/canhelp/node_modules/google-auth-library/build/src/auth
NameSizeModeActions
authclient.d.ts107640644editdlrm
authclient.js112470644editdlrm
awsclient.d.ts53150644editdlrm
awsclient.js75560644editdlrm
awsrequestsigner.d.ts16260644editdlrm
awsrequestsigner.js94420644editdlrm
baseexternalclient.d.ts130200644editdlrm
baseexternalclient.js208570644editdlrm
certificatesubjecttokensupplier.d.ts22020644editdlrm
certificatesubjecttokensupplier.js106190644editdlrm
computeclient.d.ts13590644editdlrm
computeclient.js44970644editdlrm
credentials.d.ts23590644editdlrm
credentials.js7040644editdlrm
defaultawssecuritycredentialssupplier.d.ts37950644editdlrm
defaultawssecuritycredentialssupplier.js93300644editdlrm
downscopedclient.d.ts66930644editdlrm
downscopedclient.js123530644editdlrm
envDetect.d.ts3630644editdlrm
envDetect.js28310644editdlrm
executable-response.d.ts44890644editdlrm
executable-response.js75190644editdlrm
externalAccountAuthorizedUserClient.d.ts31730644editdlrm
externalAccountAuthorizedUserClient.js100050644editdlrm
externalclient.d.ts15280644editdlrm
externalclient.js30480644editdlrm
filesubjecttokensupplier.d.ts16080644editdlrm
filesubjecttokensupplier.js35150644editdlrm
googleauth.d.ts235740644editdlrm
googleauth.js363740644editdlrm
iam.d.ts6230644editdlrm
iam.js13730644editdlrm
identitypoolclient.d.ts56260644editdlrm
identitypoolclient.js67750644editdlrm
idtokenclient.d.ts9380644editdlrm
idtokenclient.js21060644editdlrm
impersonated.d.ts56870644editdlrm
impersonated.js86540644editdlrm
jwtaccess.d.ts23360644editdlrm
jwtaccess.js72130644editdlrm
jwtclient.d.ts51220644editdlrm
jwtclient.js112560644editdlrm
loginticket.d.ts53670644editdlrm
loginticket.js17950644editdlrm
oauth2client.d.ts253260644editdlrm
oauth2client.js336620644editdlrm
oauth2common.d.ts40940644editdlrm
oauth2common.js80800644editdlrm
passthrough.d.ts10970644editdlrm
passthrough.js18420644editdlrm
pluggable-auth-client.d.ts54850644editdlrm
pluggable-auth-client.js100020644editdlrm
pluggable-auth-handler.d.ts21090644editdlrm
pluggable-auth-handler.js72600644editdlrm
refreshclient.d.ts34360644editdlrm
refreshclient.js66500644editdlrm
stscredentials.d.ts52610644editdlrm
stscredentials.js47380644editdlrm
urlsubjecttokensupplier.d.ts21860644editdlrm
urlsubjecttokensupplier.js28590644editdlrm
Edit: /opt/canhelp/node_modules/google-auth-library/build/src/auth/executable-response.js (7519B)
"use strict"; // Copyright 2022 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. Object.defineProperty(exports, "__esModule", { value: true }); exports.InvalidSubjectTokenError = exports.InvalidMessageFieldError = exports.InvalidCodeFieldError = exports.InvalidTokenTypeFieldError = exports.InvalidExpirationTimeFieldError = exports.InvalidSuccessFieldError = exports.InvalidVersionFieldError = exports.ExecutableResponseError = exports.ExecutableResponse = void 0; const SAML_SUBJECT_TOKEN_TYPE = 'urn:ietf:params:oauth:token-type:saml2'; const OIDC_SUBJECT_TOKEN_TYPE1 = 'urn:ietf:params:oauth:token-type:id_token'; const OIDC_SUBJECT_TOKEN_TYPE2 = 'urn:ietf:params:oauth:token-type:jwt'; /** * Defines the response of a 3rd party executable run by the pluggable auth client. */ class ExecutableResponse { /** * The version of the Executable response. Only version 1 is currently supported. */ version; /** * Whether the executable ran successfully. */ success; /** * The epoch time for expiration of the token in seconds. */ expirationTime; /** * The type of subject token in the response, currently supported values are: * urn:ietf:params:oauth:token-type:saml2 * urn:ietf:params:oauth:token-type:id_token * urn:ietf:params:oauth:token-type:jwt */ tokenType; /** * The error code from the executable. */ errorCode; /** * The error message from the executable. */ errorMessage; /** * The subject token from the executable, format depends on tokenType. */ subjectToken; /** * Instantiates an ExecutableResponse instance using the provided JSON object * from the output of the executable. * @param responseJson Response from a 3rd party executable, loaded from a * run of the executable or a cached output file. */ constructor(responseJson) { // Check that the required fields exist in the json response. if (!responseJson.version) { throw new InvalidVersionFieldError("Executable response must contain a 'version' field."); } if (responseJson.success === undefined) { throw new InvalidSuccessFieldError("Executable response must contain a 'success' field."); } this.version = responseJson.version; this.success = responseJson.success; // Validate required fields for a successful response. if (this.success) { this.expirationTime = responseJson.expiration_time; this.tokenType = responseJson.token_type; // Validate token type field. if (this.tokenType !== SAML_SUBJECT_TOKEN_TYPE && this.tokenType !== OIDC_SUBJECT_TOKEN_TYPE1 && this.tokenType !== OIDC_SUBJECT_TOKEN_TYPE2) { throw new InvalidTokenTypeFieldError("Executable response must contain a 'token_type' field when successful " + `and it must be one of ${OIDC_SUBJECT_TOKEN_TYPE1}, ${OIDC_SUBJECT_TOKEN_TYPE2}, or ${SAML_SUBJECT_TOKEN_TYPE}.`); } // Validate subject token. if (this.tokenType === SAML_SUBJECT_TOKEN_TYPE) { if (!responseJson.saml_response) { throw new InvalidSubjectTokenError(`Executable response must contain a 'saml_response' field when token_type=${SAML_SUBJECT_TOKEN_TYPE}.`); } this.subjectToken = responseJson.saml_response; } else { if (!responseJson.id_token) { throw new InvalidSubjectTokenError("Executable response must contain a 'id_token' field when " + `token_type=${OIDC_SUBJECT_TOKEN_TYPE1} or ${OIDC_SUBJECT_TOKEN_TYPE2}.`); } this.subjectToken = responseJson.id_token; } } else { // Both code and message must be provided for unsuccessful responses. if (!responseJson.code) { throw new InvalidCodeFieldError("Executable response must contain a 'code' field when unsuccessful."); } if (!responseJson.message) { throw new InvalidMessageFieldError("Executable response must contain a 'message' field when unsuccessful."); } this.errorCode = responseJson.code; this.errorMessage = responseJson.message; } } /** * @return A boolean representing if the response has a valid token. Returns * true when the response was successful and the token is not expired. */ isValid() { return !this.isExpired() && this.success; } /** * @return A boolean representing if the response is expired. Returns true if the * provided timeout has passed. */ isExpired() { return (this.expirationTime !== undefined && this.expirationTime < Math.round(Date.now() / 1000)); } } exports.ExecutableResponse = ExecutableResponse; /** * An error thrown by the ExecutableResponse class. */ class ExecutableResponseError extends Error { constructor(message) { super(message); Object.setPrototypeOf(this, new.target.prototype); } } exports.ExecutableResponseError = ExecutableResponseError; /** * An error thrown when the 'version' field in an executable response is missing or invalid. */ class InvalidVersionFieldError extends ExecutableResponseError { } exports.InvalidVersionFieldError = InvalidVersionFieldError; /** * An error thrown when the 'success' field in an executable response is missing or invalid. */ class InvalidSuccessFieldError extends ExecutableResponseError { } exports.InvalidSuccessFieldError = InvalidSuccessFieldError; /** * An error thrown when the 'expiration_time' field in an executable response is missing or invalid. */ class InvalidExpirationTimeFieldError extends ExecutableResponseError { } exports.InvalidExpirationTimeFieldError = InvalidExpirationTimeFieldError; /** * An error thrown when the 'token_type' field in an executable response is missing or invalid. */ class InvalidTokenTypeFieldError extends ExecutableResponseError { } exports.InvalidTokenTypeFieldError = InvalidTokenTypeFieldError; /** * An error thrown when the 'code' field in an executable response is missing or invalid. */ class InvalidCodeFieldError extends ExecutableResponseError { } exports.InvalidCodeFieldError = InvalidCodeFieldError; /** * An error thrown when the 'message' field in an executable response is missing or invalid. */ class InvalidMessageFieldError extends ExecutableResponseError { } exports.InvalidMessageFieldError = InvalidMessageFieldError; /** * An error thrown when the subject token in an executable response is missing or invalid. */ class InvalidSubjectTokenError extends ExecutableResponseError { } exports.InvalidSubjectTokenError = InvalidSubjectTokenError; //# sourceMappingURL=executable-response.js.map