Documentation
¶
Overview ¶
Index ¶
- Constants
- func MapRemoteAssignmentsToTerraform(ctx context.Context, data *DeviceEnrollmentConfigurationResourceModel, ...)
- func MapRemoteResourceStateToTerraform(ctx context.Context, data *DeviceEnrollmentConfigurationResourceModel, ...)
- func NewDeviceEnrollmentConfigurationResource() resource.Resource
- type AssignmentResourceModel
- type DeviceComanagementAuthorityModel
- type DeviceEnrollmentConfigurationResource
- func (r *DeviceEnrollmentConfigurationResource) Configure(ctx context.Context, req resource.ConfigureRequest, ...)
- func (r *DeviceEnrollmentConfigurationResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse)
- func (r *DeviceEnrollmentConfigurationResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse)
- func (r *DeviceEnrollmentConfigurationResource) FullTypeName() string
- func (r *DeviceEnrollmentConfigurationResource) ImportState(ctx context.Context, req resource.ImportStateRequest, ...)
- func (r *DeviceEnrollmentConfigurationResource) Metadata(ctx context.Context, req resource.MetadataRequest, ...)
- func (r *DeviceEnrollmentConfigurationResource) ModifyPlan(ctx context.Context, req resource.ModifyPlanRequest, ...)
- func (r *DeviceEnrollmentConfigurationResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse)
- func (r *DeviceEnrollmentConfigurationResource) Schema(ctx context.Context, req resource.SchemaRequest, resp *resource.SchemaResponse)
- func (r *DeviceEnrollmentConfigurationResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse)
- type DeviceEnrollmentConfigurationResourceModel
- type DeviceEnrollmentLimitModel
- type EnrollmentNotificationsModel
- type NewPlatformRestrictionModel
- type PlatformRestrictionModel
- type Windows10EnrollmentCompletionPageModel
- type WindowsHelloForBusinessModel
Constants ¶
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
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 ¶
func (r *DeviceEnrollmentConfigurationResource) Configure(ctx context.Context, req resource.ConfigureRequest, resp *resource.ConfigureResponse)
Configure sets the client for the resource.
func (*DeviceEnrollmentConfigurationResource) Create ¶
func (r *DeviceEnrollmentConfigurationResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse)
Create handles the Create operation.
func (*DeviceEnrollmentConfigurationResource) Delete ¶
func (r *DeviceEnrollmentConfigurationResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse)
Delete handles the Delete operation.
func (*DeviceEnrollmentConfigurationResource) FullTypeName ¶
func (r *DeviceEnrollmentConfigurationResource) FullTypeName() string
FullTypeName returns the full type name of the resource for logging purposes.
func (*DeviceEnrollmentConfigurationResource) ImportState ¶
func (r *DeviceEnrollmentConfigurationResource) ImportState(ctx context.Context, req resource.ImportStateRequest, resp *resource.ImportStateResponse)
ImportState imports the resource state.
func (*DeviceEnrollmentConfigurationResource) Metadata ¶
func (r *DeviceEnrollmentConfigurationResource) Metadata(ctx context.Context, req resource.MetadataRequest, resp *resource.MetadataResponse)
Metadata returns the resource type name.
func (*DeviceEnrollmentConfigurationResource) ModifyPlan ¶
func (r *DeviceEnrollmentConfigurationResource) ModifyPlan(ctx context.Context, req resource.ModifyPlanRequest, resp *resource.ModifyPlanResponse)
ModifyPlan handles plan modification for diff suppression
func (*DeviceEnrollmentConfigurationResource) Read ¶
func (r *DeviceEnrollmentConfigurationResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse)
Read handles the Read operation.
func (*DeviceEnrollmentConfigurationResource) Schema ¶
func (r *DeviceEnrollmentConfigurationResource) Schema(ctx context.Context, req resource.SchemaRequest, resp *resource.SchemaResponse)
Schema defines the schema for the resource.
func (*DeviceEnrollmentConfigurationResource) Update ¶
func (r *DeviceEnrollmentConfigurationResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse)
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