@pulumi/azuread
Version:
A Pulumi package for creating and managing Azure Active Directory (Azure AD) cloud resources.
200 lines (199 loc) • 6.75 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
* Gets basic information for multiple Azure Active Directory service principals.
*
* ## API Permissions
*
* The following API permissions are required in order to use this data source.
*
* When authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`
*
* When authenticated with a user principal, this data source does not require any additional roles.
*
* ## Example Usage
*
* *Look up by application display names*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* displayNames: [
* "example-app",
* "another-app",
* ],
* });
* ```
*
* *Look up by application IDs (client IDs)*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* clientIds: [
* "11111111-0000-0000-0000-000000000000",
* "22222222-0000-0000-0000-000000000000",
* "33333333-0000-0000-0000-000000000000",
* ],
* });
* ```
*
* *Look up by service principal object IDs*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* objectIds: [
* "00000000-0000-0000-0000-000000000000",
* "00000000-0000-0000-0000-111111111111",
* "00000000-0000-0000-0000-222222222222",
* ],
* });
* ```
*/
export declare function getServicePrincipals(args?: GetServicePrincipalsArgs, opts?: pulumi.InvokeOptions): Promise<GetServicePrincipalsResult>;
/**
* A collection of arguments for invoking getServicePrincipals.
*/
export interface GetServicePrincipalsArgs {
/**
* A list of client IDs of the applications associated with the service principals.
*/
clientIds?: string[];
/**
* A list of display names of the applications associated with the service principals.
*/
displayNames?: string[];
/**
* Ignore missing service principals and return all service principals that are found. The data source will still fail if no service principals are found. Defaults to false.
*/
ignoreMissing?: boolean;
/**
* The object IDs of the service principals.
*/
objectIds?: string[];
/**
* When `true`, the data source will return all service principals. Cannot be used with `ignoreMissing`. Defaults to false.
*
* > Either `returnAll`, or one of `clientIds`, `displayNames` or `objectIds` must be specified. These _may_ be specified as an empty list, in which case no results will be returned.
*/
returnAll?: boolean;
}
/**
* A collection of values returned by getServicePrincipals.
*/
export interface GetServicePrincipalsResult {
/**
* The client ID of the application associated with this service principal.
*/
readonly clientIds: string[];
/**
* A list of display names of the applications associated with the service principals.
*/
readonly displayNames: string[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly ignoreMissing?: boolean;
/**
* The object IDs of the service principals.
*/
readonly objectIds: string[];
readonly returnAll?: boolean;
/**
* A list of service principals. Each `servicePrincipal` object provides the attributes documented below.
*/
readonly servicePrincipals: outputs.GetServicePrincipalsServicePrincipal[];
}
/**
* Gets basic information for multiple Azure Active Directory service principals.
*
* ## API Permissions
*
* The following API permissions are required in order to use this data source.
*
* When authenticated with a service principal, this data source requires one of the following application roles: `Application.Read.All` or `Directory.Read.All`
*
* When authenticated with a user principal, this data source does not require any additional roles.
*
* ## Example Usage
*
* *Look up by application display names*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* displayNames: [
* "example-app",
* "another-app",
* ],
* });
* ```
*
* *Look up by application IDs (client IDs)*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* clientIds: [
* "11111111-0000-0000-0000-000000000000",
* "22222222-0000-0000-0000-000000000000",
* "33333333-0000-0000-0000-000000000000",
* ],
* });
* ```
*
* *Look up by service principal object IDs*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azuread from "@pulumi/azuread";
*
* const example = azuread.getServicePrincipals({
* objectIds: [
* "00000000-0000-0000-0000-000000000000",
* "00000000-0000-0000-0000-111111111111",
* "00000000-0000-0000-0000-222222222222",
* ],
* });
* ```
*/
export declare function getServicePrincipalsOutput(args?: GetServicePrincipalsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetServicePrincipalsResult>;
/**
* A collection of arguments for invoking getServicePrincipals.
*/
export interface GetServicePrincipalsOutputArgs {
/**
* A list of client IDs of the applications associated with the service principals.
*/
clientIds?: pulumi.Input<pulumi.Input<string>[]>;
/**
* A list of display names of the applications associated with the service principals.
*/
displayNames?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Ignore missing service principals and return all service principals that are found. The data source will still fail if no service principals are found. Defaults to false.
*/
ignoreMissing?: pulumi.Input<boolean>;
/**
* The object IDs of the service principals.
*/
objectIds?: pulumi.Input<pulumi.Input<string>[]>;
/**
* When `true`, the data source will return all service principals. Cannot be used with `ignoreMissing`. Defaults to false.
*
* > Either `returnAll`, or one of `clientIds`, `displayNames` or `objectIds` must be specified. These _may_ be specified as an empty list, in which case no results will be returned.
*/
returnAll?: pulumi.Input<boolean>;
}