getClient

This data source can be used to fetch properties of a Keycloak OpenID client for usage with other resources.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as keycloak from "@pulumi/keycloak";
const realmManagement = keycloak.openid.getClient({
realmId: "my-realm",
clientId: "realm-management",
});
// use the data source
const admin = realmManagement.then(realmManagement => keycloak.getRole({
realmId: "my-realm",
clientId: realmManagement.id,
name: "realm-admin",
}));
import pulumi
import pulumi_keycloak as keycloak
realm_management = keycloak.openid.get_client(realm_id="my-realm",
client_id="realm-management")
# use the data source
admin = keycloak.get_role(realm_id="my-realm",
client_id=realm_management.id,
name="realm-admin")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Keycloak = Pulumi.Keycloak;
return await Deployment.RunAsync(() =>
{
var realmManagement = Keycloak.OpenId.GetClient.Invoke(new()
{
RealmId = "my-realm",
ClientId = "realm-management",
});
// use the data source
var admin = Keycloak.GetRole.Invoke(new()
{
RealmId = "my-realm",
ClientId = realmManagement.Apply(getClientResult => getClientResult.Id),
Name = "realm-admin",
});
});
package main
import (
"github.com/pulumi/pulumi-keycloak/sdk/v6/go/keycloak"
"github.com/pulumi/pulumi-keycloak/sdk/v6/go/keycloak/openid"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
realmManagement, err := openid.LookupClient(ctx, &openid.LookupClientArgs{
RealmId: "my-realm",
ClientId: "realm-management",
}, nil)
if err != nil {
return err
}
// use the data source
_, err = keycloak.LookupRole(ctx, &keycloak.LookupRoleArgs{
RealmId: "my-realm",
ClientId: pulumi.StringRef(realmManagement.Id),
Name: "realm-admin",
}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.keycloak.openid.OpenidFunctions;
import com.pulumi.keycloak.openid.inputs.GetClientArgs;
import com.pulumi.keycloak.KeycloakFunctions;
import com.pulumi.keycloak.inputs.GetRoleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var realmManagement = OpenidFunctions.getClient(GetClientArgs.builder()
.realmId("my-realm")
.clientId("realm-management")
.build());
// use the data source
final var admin = KeycloakFunctions.getRole(GetRoleArgs.builder()
.realmId("my-realm")
.clientId(realmManagement.id())
.name("realm-admin")
.build());
}
}
variables:
realmManagement:
fn::invoke:
function: keycloak:openid:getClient
arguments:
realmId: my-realm
clientId: realm-management
# use the data source
admin:
fn::invoke:
function: keycloak:getRole
arguments:
realmId: my-realm
clientId: ${realmManagement.id}
name: realm-admin

Return

A collection of values returned by getClient.

Parameters

argument

A collection of arguments for invoking getClient.


suspend fun getClient(alwaysDisplayInConsole: Boolean? = null, clientId: String, consentScreenText: String? = null, displayOnConsentScreen: Boolean? = null, extraConfig: Map<String, String>? = null, oauth2DeviceAuthorizationGrantEnabled: Boolean? = null, oauth2DeviceCodeLifespan: String? = null, oauth2DevicePollingInterval: String? = null, realmId: String): GetClientResult

Return

A collection of values returned by getClient.

Parameters

alwaysDisplayInConsole
clientId

The client id (not its unique ID).

consentScreenText
displayOnConsentScreen
extraConfig
oauth2DeviceAuthorizationGrantEnabled
oauth2DeviceCodeLifespan
oauth2DevicePollingInterval
realmId

The realm id.

See also


suspend fun getClient(argument: suspend GetClientPlainArgsBuilder.() -> Unit): GetClientResult

Return

A collection of values returned by getClient.

Parameters

argument

Builder for com.pulumi.keycloak.openid.kotlin.inputs.GetClientPlainArgs.

See also