Class OSProfile

java.lang.Object
com.azure.resourcemanager.compute.models.OSProfile

public final class OSProfile extends Object
Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned.
  • Constructor Details

    • OSProfile

      public OSProfile()
  • Method Details

    • computerName

      public String computerName()
      Get the computerName property: Specifies the host OS name of the virtual machine. <br><br> This name cannot be updated after the VM is created. <br><br> **Max-length (Windows):** 15 characters <br><br> **Max-length (Linux):** 64 characters. <br><br> For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules).
      Returns:
      the computerName value.
    • withComputerName

      public OSProfile withComputerName(String computerName)
      Set the computerName property: Specifies the host OS name of the virtual machine. <br><br> This name cannot be updated after the VM is created. <br><br> **Max-length (Windows):** 15 characters <br><br> **Max-length (Linux):** 64 characters. <br><br> For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/azure-resource-manager/management/resource-name-rules).
      Parameters:
      computerName - the computerName value to set.
      Returns:
      the OSProfile object itself.
    • adminUsername

      public String adminUsername()
      Get the adminUsername property: Specifies the name of the administrator account. <br><br> This property cannot be updated after the VM is created. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters.
      Returns:
      the adminUsername value.
    • withAdminUsername

      public OSProfile withAdminUsername(String adminUsername)
      Set the adminUsername property: Specifies the name of the administrator account. <br><br> This property cannot be updated after the VM is created. <br><br> **Windows-only restriction:** Cannot end in "." <br><br> **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". <br><br> **Minimum-length (Linux):** 1 character <br><br> **Max-length (Linux):** 64 characters <br><br> **Max-length (Windows):** 20 characters.
      Parameters:
      adminUsername - the adminUsername value to set.
      Returns:
      the OSProfile object itself.
    • adminPassword

      public String adminPassword()
      Get the adminPassword property: Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection).
      Returns:
      the adminPassword value.
    • withAdminPassword

      public OSProfile withAdminPassword(String adminPassword)
      Set the adminPassword property: Specifies the password of the administrator account. <br><br> **Minimum-length (Windows):** 8 characters <br><br> **Minimum-length (Linux):** 6 characters <br><br> **Max-length (Windows):** 123 characters <br><br> **Max-length (Linux):** 72 characters <br><br> **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled <br> Has lower characters <br>Has upper characters <br> Has a digit <br> Has a special character (Regex match [\W_]) <br><br> **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" <br><br> For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) <br><br> For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection).
      Parameters:
      adminPassword - the adminPassword value to set.
      Returns:
      the OSProfile object itself.
    • customData

      public String customData()
      Get the customData property: Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. <br><br> **Note: Do not pass any secrets or passwords in customData property** <br><br> This property cannot be updated after the VM is created. <br><br> customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/) <br><br> For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init).
      Returns:
      the customData value.
    • withCustomData

      public OSProfile withCustomData(String customData)
      Set the customData property: Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. <br><br> **Note: Do not pass any secrets or passwords in customData property** <br><br> This property cannot be updated after the VM is created. <br><br> customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/blog/custom-data-and-cloud-init-on-windows-azure/) <br><br> For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init).
      Parameters:
      customData - the customData value to set.
      Returns:
      the OSProfile object itself.
    • windowsConfiguration

      public WindowsConfiguration windowsConfiguration()
      Get the windowsConfiguration property: Specifies Windows operating system settings on the virtual machine.
      Returns:
      the windowsConfiguration value.
    • withWindowsConfiguration

      public OSProfile withWindowsConfiguration(WindowsConfiguration windowsConfiguration)
      Set the windowsConfiguration property: Specifies Windows operating system settings on the virtual machine.
      Parameters:
      windowsConfiguration - the windowsConfiguration value to set.
      Returns:
      the OSProfile object itself.
    • linuxConfiguration

      public LinuxConfiguration linuxConfiguration()
      Get the linuxConfiguration property: Specifies the Linux operating system settings on the virtual machine. <br><br>For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
      Returns:
      the linuxConfiguration value.
    • withLinuxConfiguration

      public OSProfile withLinuxConfiguration(LinuxConfiguration linuxConfiguration)
      Set the linuxConfiguration property: Specifies the Linux operating system settings on the virtual machine. <br><br>For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
      Parameters:
      linuxConfiguration - the linuxConfiguration value to set.
      Returns:
      the OSProfile object itself.
    • secrets

      public List<VaultSecretGroup> secrets()
      Get the secrets property: Specifies set of certificates that should be installed onto the virtual machine. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
      Returns:
      the secrets value.
    • withSecrets

      public OSProfile withSecrets(List<VaultSecretGroup> secrets)
      Set the secrets property: Specifies set of certificates that should be installed onto the virtual machine. To install certificates on a virtual machine it is recommended to use the [Azure Key Vault virtual machine extension for Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) or the [Azure Key Vault virtual machine extension for Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
      Parameters:
      secrets - the secrets value to set.
      Returns:
      the OSProfile object itself.
    • allowExtensionOperations

      public Boolean allowExtensionOperations()
      Get the allowExtensionOperations property: Specifies whether extension operations should be allowed on the virtual machine. <br><br>This may only be set to False when no extensions are present on the virtual machine.
      Returns:
      the allowExtensionOperations value.
    • withAllowExtensionOperations

      public OSProfile withAllowExtensionOperations(Boolean allowExtensionOperations)
      Set the allowExtensionOperations property: Specifies whether extension operations should be allowed on the virtual machine. <br><br>This may only be set to False when no extensions are present on the virtual machine.
      Parameters:
      allowExtensionOperations - the allowExtensionOperations value to set.
      Returns:
      the OSProfile object itself.
    • requireGuestProvisionSignal

      public Boolean requireGuestProvisionSignal()
      Get the requireGuestProvisionSignal property: Optional property which must either be set to True or omitted.
      Returns:
      the requireGuestProvisionSignal value.
    • withRequireGuestProvisionSignal

      public OSProfile withRequireGuestProvisionSignal(Boolean requireGuestProvisionSignal)
      Set the requireGuestProvisionSignal property: Optional property which must either be set to True or omitted.
      Parameters:
      requireGuestProvisionSignal - the requireGuestProvisionSignal value to set.
      Returns:
      the OSProfile object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.