@zuplo/runtime 5.2346.0 → 5.2348.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5011,6 +5011,65 @@ export declare interface UpstreamFirebaseUserAuthInboundPolicyOptions {
5011
5011
  expirationOffsetSeconds?: number;
5012
5012
  }
5013
5013
 
5014
+ /**
5015
+ * Authenticates with GCP resources or Google services using Workload Identity
5016
+ * Federation allowing secure access to these resources without requiring the
5017
+ * use of a service account private key.
5018
+ *
5019
+ * @title Upstream GCP Federated Auth Inbound
5020
+ * @beta
5021
+ * @enterprise
5022
+ * @param request - The ZuploRequest
5023
+ * @param context - The ZuploContext
5024
+ * @param options - The policy options set in policies.json
5025
+ * @param policyName - The name of the policy as set in policies.json
5026
+ * @returns A Request or a Response
5027
+ */
5028
+ export declare class UpstreamGcpFederatedAuthInboundPolicy extends InboundPolicy<UpstreamGcpFederatedAuthInboundPolicyOptions> {
5029
+ private cacheName;
5030
+ private normalizedWorkloadIdentityProvider;
5031
+ constructor(options: UpstreamGcpFederatedAuthInboundPolicyOptions, policyName: string);
5032
+ /**
5033
+ * The handler that is called each time this policy is invoked
5034
+ *
5035
+ * @param request - The incoming Request
5036
+ * @param context - The current context of the Request
5037
+ * @returns A Response or Request object
5038
+ */
5039
+ handler(request: ZuploRequest, context: ZuploContext): Promise<ZuploRequest | Response>;
5040
+ }
5041
+
5042
+ /**
5043
+ * The options for this policy.
5044
+ */
5045
+ export declare interface UpstreamGcpFederatedAuthInboundPolicyOptions {
5046
+ /**
5047
+ * The audience for the minted JWT. This is typically the URL of your service. See the document {@link https://cloud.google.com/endpoints/docs/grpc-service-config/reference/rpc/google.api#google.api.AuthRequirement|AuthRequirement} for details.
5048
+ */
5049
+ audience: string;
5050
+ /**
5051
+ * The Google Service Account email address.
5052
+ */
5053
+ serviceAccountEmail: string;
5054
+ workloadIdentityProvider: string;
5055
+ /**
5056
+ * The lifetime in seconds of the issued token.
5057
+ */
5058
+ tokenLifetime?: number;
5059
+ /**
5060
+ * The number of times to retry fetching the token in the event of a failure.
5061
+ */
5062
+ tokenRetries?: number;
5063
+ /**
5064
+ * The number of seconds less than the token expiration to cache the token.
5065
+ */
5066
+ expirationOffsetSeconds?: number;
5067
+ /**
5068
+ * This is an advanced option that should only be used if you do not want to persist information in ZoneCache.
5069
+ */
5070
+ useMemoryCacheOnly?: boolean;
5071
+ }
5072
+
5014
5073
  /**
5015
5074
  * Creates a self-signed JWT token (generated using a Google Service Account
5016
5075
  * JSON) and attaches it to the outgoing request. Useful when calling GCP
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zuplo/runtime",
3
- "version": "5.2346.0",
3
+ "version": "5.2348.0",
4
4
  "repository": "https://github.com/zuplo/zuplo",
5
5
  "author": "Zuplo, Inc.",
6
6
  "exports": {