EligibleRoleAssignment

class EligibleRoleAssignment : KotlinCustomResource

Manages a Pim Eligible Role Assignment.

Example Usage

Subscription)

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.inputs.GetSubscriptionArgs;
import com.pulumi.azure.authorization.AuthorizationFunctions;
import com.pulumi.azure.authorization.inputs.GetRoleDefinitionArgs;
import com.pulumi.time.Static;
import com.pulumi.azure.pim.EligibleRoleAssignment;
import com.pulumi.azure.pim.EligibleRoleAssignmentArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentScheduleArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentScheduleExpirationArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentTicketArgs;
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 primary = CoreFunctions.getSubscription();
final var exampleClientConfig = CoreFunctions.getClientConfig();
final var exampleRoleDefinition = AuthorizationFunctions.getRoleDefinition(GetRoleDefinitionArgs.builder()
.name("Reader")
.build());
var exampleStatic = new Static("exampleStatic");
var exampleEligibleRoleAssignment = new EligibleRoleAssignment("exampleEligibleRoleAssignment", EligibleRoleAssignmentArgs.builder()
.scope(primary.applyValue(getSubscriptionResult -> getSubscriptionResult.id()))
.roleDefinitionId(String.format("%s%s", primary.applyValue(getSubscriptionResult -> getSubscriptionResult.id()),exampleRoleDefinition.applyValue(getRoleDefinitionResult -> getRoleDefinitionResult.id())))
.principalId(exampleClientConfig.applyValue(getClientConfigResult -> getClientConfigResult.objectId()))
.schedule(EligibleRoleAssignmentScheduleArgs.builder()
.startDateTime(exampleStatic.rfc3339())
.expiration(EligibleRoleAssignmentScheduleExpirationArgs.builder()
.durationHours(8)
.build())
.build())
.justification("Expiration Duration Set")
.ticket(EligibleRoleAssignmentTicketArgs.builder()
.number("1")
.system("example ticket system")
.build())
.build());
}
}

Management Group)

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.authorization.AuthorizationFunctions;
import com.pulumi.azure.authorization.inputs.GetRoleDefinitionArgs;
import com.pulumi.azure.management.Group;
import com.pulumi.time.Static;
import com.pulumi.azure.pim.EligibleRoleAssignment;
import com.pulumi.azure.pim.EligibleRoleAssignmentArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentScheduleArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentScheduleExpirationArgs;
import com.pulumi.azure.pim.inputs.EligibleRoleAssignmentTicketArgs;
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 exampleClientConfig = CoreFunctions.getClientConfig();
final var exampleRoleDefinition = AuthorizationFunctions.getRoleDefinition(GetRoleDefinitionArgs.builder()
.name("Reader")
.build());
var exampleGroup = new Group("exampleGroup");
var exampleStatic = new Static("exampleStatic");
var exampleEligibleRoleAssignment = new EligibleRoleAssignment("exampleEligibleRoleAssignment", EligibleRoleAssignmentArgs.builder()
.scope(exampleGroup.id())
.roleDefinitionId(exampleRoleDefinition.applyValue(getRoleDefinitionResult -> getRoleDefinitionResult.id()))
.principalId(exampleClientConfig.applyValue(getClientConfigResult -> getClientConfigResult.objectId()))
.schedule(EligibleRoleAssignmentScheduleArgs.builder()
.startDateTime(exampleStatic.rfc3339())
.expiration(EligibleRoleAssignmentScheduleExpirationArgs.builder()
.durationHours(8)
.build())
.build())
.justification("Expiration Duration Set")
.ticket(EligibleRoleAssignmentTicketArgs.builder()
.number("1")
.system("example ticket system")
.build())
.build());
}
}

Import

Pim Eligible Role Assignments can be imported using the resource id, e.g.

$ pulumi import azure:pim/eligibleRoleAssignment:EligibleRoleAssignment example /subscriptions/00000000-0000-0000-0000-000000000000|/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000

Properties

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val justification: Output<String>?

The justification of the role assignment. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard
val principalId: Output<String>

The principal id. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard
val principalType: Output<String>

The type of principal.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The role definition id. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard

A schedule block as defined below. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard
val scope: Output<String>

The scope. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard

A ticket block as defined below. Changing this forces a new Pim Eligible Role Assignment to be created.

Link copied to clipboard
val urn: Output<String>