UNPKG

@pulumi/gcp

Version:

A Pulumi package for creating and managing Google Cloud Platform resources.

72 lines (71 loc) 2.47 kB
import * as pulumi from "@pulumi/pulumi"; /** * Get OpenID userinfo about the credentials used with the Google provider, * specifically the email. * * This datasource enables you to export the email of the account you've * authenticated the provider with; this can be used alongside * `data.google_client_config`'s `accessToken` to perform OpenID Connect * authentication with GKE and configure an RBAC role for the email used. * * > This resource will only work as expected if the provider is configured to * use the `https://www.googleapis.com/auth/userinfo.email` scope! You will * receive an error otherwise. The provider uses this scope by default. * * ## Example Usage * * ### Exporting An Email * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * export = async () => { * const me = await gcp.organizations.getClientOpenIdUserInfo({}); * return { * "my-email": me.email, * }; * } * ``` */ export declare function getClientOpenIdUserInfo(opts?: pulumi.InvokeOptions): Promise<GetClientOpenIdUserInfoResult>; /** * A collection of values returned by getClientOpenIdUserInfo. */ export interface GetClientOpenIdUserInfoResult { /** * The email of the account used by the provider to authenticate with GCP. */ readonly email: string; readonly id: string; } /** * Get OpenID userinfo about the credentials used with the Google provider, * specifically the email. * * This datasource enables you to export the email of the account you've * authenticated the provider with; this can be used alongside * `data.google_client_config`'s `accessToken` to perform OpenID Connect * authentication with GKE and configure an RBAC role for the email used. * * > This resource will only work as expected if the provider is configured to * use the `https://www.googleapis.com/auth/userinfo.email` scope! You will * receive an error otherwise. The provider uses this scope by default. * * ## Example Usage * * ### Exporting An Email * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * export = async () => { * const me = await gcp.organizations.getClientOpenIdUserInfo({}); * return { * "my-email": me.email, * }; * } * ``` */ export declare function getClientOpenIdUserInfoOutput(opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetClientOpenIdUserInfoResult>;