graphBetaDeviceEnrollmentConfiguration

package
v0.15.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 4, 2025 License: MPL-2.0 Imports: 28 Imported by: 0

Documentation

Overview

REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-deviceenrollmentconfiguration?view=graph-rest-beta

Index

Constants

View Source
const (
	ResourceName  = "graph_beta_device_management_device_enrollment_configuration"
	CreateTimeout = 180
	UpdateTimeout = 180
	ReadTimeout   = 180
	DeleteTimeout = 180
)

Variables

This section is empty.

Functions

func MapRemoteAssignmentsToTerraform

func MapRemoteAssignmentsToTerraform(ctx context.Context, data *DeviceEnrollmentConfigurationResourceModel, assignments []graphmodels.EnrollmentConfigurationAssignmentable)

MapRemoteAssignmentsToTerraform maps the Graph API assignments into the Terraform consolidated model

func MapRemoteResourceStateToTerraform

func MapRemoteResourceStateToTerraform(ctx context.Context, data *DeviceEnrollmentConfigurationResourceModel, remoteResource graphmodels.DeviceEnrollmentConfigurationable)

MapRemoteResourceStateToTerraform maps the Graph API model into the Terraform state model

func NewDeviceEnrollmentConfigurationResource

func NewDeviceEnrollmentConfigurationResource() resource.Resource

Types

type AssignmentResourceModel

type AssignmentResourceModel struct {
	Target   types.String `tfsdk:"target"`    // "include" or "exclude"
	GroupIds types.Set    `tfsdk:"group_ids"` // Set of Microsoft Entra ID group IDs
}

AssignmentResourceModel defines a single assignment block within the primary resource

type DeviceComanagementAuthorityModel

type DeviceComanagementAuthorityModel struct {
	ConfigurationManagerAgentCommandLineArgument types.String `tfsdk:"configuration_manager_agent_command_line_argument"`
	InstallConfigurationManagerAgent             types.Bool   `tfsdk:"install_configuration_manager_agent"`
	ManagedDeviceAuthority                       types.Int32  `tfsdk:"managed_device_authority"`
}

DeviceComanagementAuthorityModel represents device comanagement authority settings REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-devicecomanagementauthorityconfiguration?view=graph-rest-beta

type DeviceEnrollmentConfigurationResource

type DeviceEnrollmentConfigurationResource struct {
	ProviderTypeName string
	TypeName         string
	ReadPermissions  []string
	WritePermissions []string
	ResourcePath     string
	// contains filtered or unexported fields
}

func (*DeviceEnrollmentConfigurationResource) Configure

Configure sets the client for the resource.

func (*DeviceEnrollmentConfigurationResource) Create

Create handles the Create operation.

func (*DeviceEnrollmentConfigurationResource) Delete

Delete handles the Delete operation.

func (*DeviceEnrollmentConfigurationResource) FullTypeName

FullTypeName returns the full type name of the resource for logging purposes.

func (*DeviceEnrollmentConfigurationResource) ImportState

ImportState imports the resource state.

func (*DeviceEnrollmentConfigurationResource) Metadata

Metadata returns the resource type name.

func (*DeviceEnrollmentConfigurationResource) ModifyPlan

ModifyPlan handles plan modification for diff suppression

func (*DeviceEnrollmentConfigurationResource) Read

Read handles the Read operation.

func (*DeviceEnrollmentConfigurationResource) Schema

Schema defines the schema for the resource.

func (*DeviceEnrollmentConfigurationResource) Update

Update handles the Update operation.

type DeviceEnrollmentConfigurationResourceModel

type DeviceEnrollmentConfigurationResourceModel struct {
	ID                                       types.String                            `tfsdk:"id"`
	DisplayName                              types.String                            `tfsdk:"display_name"`
	Description                              types.String                            `tfsdk:"description"`
	Priority                                 types.Int32                             `tfsdk:"priority"`
	CreatedDateTime                          types.String                            `tfsdk:"created_date_time"`
	LastModifiedDateTime                     types.String                            `tfsdk:"last_modified_date_time"`
	Version                                  types.Int32                             `tfsdk:"version"`
	DeviceEnrollmentConfigurationType        types.String                            `tfsdk:"device_enrollment_configuration_type"`
	RoleScopeTagIds                          types.Set                               `tfsdk:"role_scope_tag_ids"`
	NewPlatformRestriction                   *NewPlatformRestrictionModel            `tfsdk:"platform_restriction"`
	DefaultWindows10EnrollmentCompletionPage *Windows10EnrollmentCompletionPageModel `tfsdk:"default_windows10_enrollment_completion_page"`
	Windows10EnrollmentCompletionPage        *Windows10EnrollmentCompletionPageModel `tfsdk:"windows10_enrollment_completion_page"`
	WindowsHelloForBusiness                  *WindowsHelloForBusinessModel           `tfsdk:"windows_hello_for_business"`
	EnrollmentNotifications                  *EnrollmentNotificationsModel           `tfsdk:"enrollment_notifications"`
	DeviceComanagementAuthority              *DeviceComanagementAuthorityModel       `tfsdk:"device_comanagement_authority"`
	DeviceEnrollmentLimit                    *DeviceEnrollmentLimitModel             `tfsdk:"device_enrollment_limit"`
	Assignments                              []AssignmentResourceModel               `tfsdk:"assignment"`
	Timeouts                                 timeouts.Value                          `tfsdk:"timeouts"`
}

DeviceEnrollmentConfigurationResourceModel represents the base values for device enrollment configurations

type EnrollmentNotificationsModel

type EnrollmentNotificationsModel struct {
	SendPushNotification          types.Bool   `tfsdk:"send_push_notification"`
	NotificationTitle             types.String `tfsdk:"notification_title"`
	NotificationBody              types.String `tfsdk:"notification_body"`
	NotificationSender            types.String `tfsdk:"notification_sender"`
	DefaultLocale                 types.String `tfsdk:"default_locale"`
	BrandingOptions               types.String `tfsdk:"branding_options"`                 // Enum
	PlatformType                  types.String `tfsdk:"platform_type"`                    // Enum
	TemplateType                  types.String `tfsdk:"template_type"`                    // Enum
	NotificationMessageTemplateId types.String `tfsdk:"notification_message_template_id"` // UUID
	NotificationTemplates         types.Set    `tfsdk:"notification_templates"`           // Set of strings
}

EnrollmentNotificationsModel represents enrollment notification settings REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-deviceenrollmentnotificationconfiguration?view=graph-rest-beta

type NewPlatformRestrictionModel

type NewPlatformRestrictionModel struct {
	PlatformType types.String              `tfsdk:"platform_type"`
	Restriction  *PlatformRestrictionModel `tfsdk:"restriction"`
}

type PlatformRestrictionModel

type PlatformRestrictionModel struct {
	PlatformBlocked                 types.Bool   `tfsdk:"platform_blocked"`
	PersonalDeviceEnrollmentBlocked types.Bool   `tfsdk:"personal_device_enrollment_blocked"`
	OSMinimumVersion                types.String `tfsdk:"os_minimum_version"`
	OSMaximumVersion                types.String `tfsdk:"os_maximum_version"`
	BlockedManufacturers            types.Set    `tfsdk:"blocked_manufacturers"`
	BlockedSkus                     types.Set    `tfsdk:"blocked_skus"`
}

PlatformRestrictionModel represents platform restriction settings REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-deviceenrollmentplatformrestrictionconfiguration?view=graph-rest-beta

type Windows10EnrollmentCompletionPageModel

type Windows10EnrollmentCompletionPageModel struct {
	AllowDeviceResetOnInstallFailure        types.Bool   `tfsdk:"allow_device_reset_on_install_failure"`
	AllowDeviceUseOnInstallFailure          types.Bool   `tfsdk:"allow_device_use_on_install_failure"`
	AllowLogCollectionOnInstallFailure      types.Bool   `tfsdk:"allow_log_collection_on_install_failure"`
	AllowNonBlockingAppInstallation         types.Bool   `tfsdk:"allow_non_blocking_app_installation"`
	BlockDeviceSetupRetryByUser             types.Bool   `tfsdk:"block_device_setup_retry_by_user"`
	CustomErrorMessage                      types.String `tfsdk:"custom_error_message"`
	DisableUserStatusTrackingAfterFirstUser types.Bool   `tfsdk:"disable_user_status_tracking_after_first_user"`
	InstallProgressTimeoutInMinutes         types.Int32  `tfsdk:"install_progress_timeout_in_minutes"`
	InstallQualityUpdates                   types.Bool   `tfsdk:"install_quality_updates"`
	SelectedMobileAppIds                    types.Set    `tfsdk:"selected_mobile_app_ids"`
	ShowInstallationProgress                types.Bool   `tfsdk:"show_installation_progress"`
	TrackInstallProgressForAutopilotOnly    types.Bool   `tfsdk:"track_install_progress_for_autopilot_only"`
}

Windows10EnrollmentCompletionPageModel represents Windows 10 enrollment completion page settings REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-windows10enrollmentcompletionpageconfiguration?view=graph-rest-beta

type WindowsHelloForBusinessModel

type WindowsHelloForBusinessModel struct {
	State                       types.String `tfsdk:"state"`                          // Possible values: "notConfigured", "enabled", "disabled"
	EnhancedBiometricsState     types.String `tfsdk:"enhanced_biometrics_state"`      // Possible values: "notConfigured", "enabled", "disabled"
	SecurityKeyForSignIn        types.String `tfsdk:"security_key_for_sign_in"`       // Possible values: "notConfigured", "enabled", "disabled"
	PinLowercaseCharactersUsage types.String `tfsdk:"pin_lowercase_characters_usage"` // Possible values: "allowed", "required", "disallowed"
	PinUppercaseCharactersUsage types.String `tfsdk:"pin_uppercase_characters_usage"` // Possible values: "allowed", "required", "disallowed"
	PinSpecialCharactersUsage   types.String `tfsdk:"pin_special_characters_usage"`   // Possible values: "allowed", "required", "disallowed"
	EnhancedSignInSecurity      types.Int32  `tfsdk:"enhanced_sign_in_security"`      // Default is Not Configured
	PinMinimumLength            types.Int32  `tfsdk:"pin_minimum_length"`             // Between 4 and 127, inclusive
	PinMaximumLength            types.Int32  `tfsdk:"pin_maximum_length"`             // Between 4 and 127, inclusive and >= pinMinimumLength
	PinExpirationInDays         types.Int32  `tfsdk:"pin_expiration_in_days"`         // Between 0 and 730, inclusive. 0 = never expire
	PinPreviousBlockCount       types.Int32  `tfsdk:"pin_previous_block_count"`       // Between 0 and 50, inclusive
	RemotePassportEnabled       types.Bool   `tfsdk:"remote_passport_enabled"`        // Controls Remote Windows Hello for Business
	SecurityDeviceRequired      types.Bool   `tfsdk:"security_device_required"`       // Require TPM for Windows Hello for Business
	UnlockWithBiometricsEnabled types.Bool   `tfsdk:"unlock_with_biometrics_enabled"` // Allow biometric gestures (face, fingerprint)
}

WindowsHelloForBusinessModel represents Windows Hello for Business settings REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-onboarding-deviceenrollmentwindowshelloforbusinessconfiguration?view=graph-rest-beta

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL