@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
72 lines (71 loc) • 2.47 kB
TypeScript
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>;