_propDict)) { if (is_a($this->_propDict["encryptionMethod"], "\Beta\Microsoft\Graph\Model\BitLockerEncryptionMethod") || is_null($this->_propDict["encryptionMethod"])) { return $this->_propDict["encryptionMethod"]; } else { $this->_propDict["encryptionMethod"] = new BitLockerEncryptionMethod($this->_propDict["encryptionMethod"]); return $this->_propDict["encryptionMethod"]; } } return null; } /** * Sets the encryptionMethod * Select the encryption method for operating system drives. Possible values are: aesCbc128, aesCbc256, xtsAes128, xtsAes256. * * @param BitLockerEncryptionMethod $val The value to assign to the encryptionMethod * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setEncryptionMethod($val) { $this->_propDict["encryptionMethod"] = $val; return $this; } /** * Gets the minimumPinLength * Indicates the minimum length of startup pin. Valid values 4 to 20 * * @return int|null The minimumPinLength */ public function getMinimumPinLength() { if (array_key_exists("minimumPinLength", $this->_propDict)) { return $this->_propDict["minimumPinLength"]; } else { return null; } } /** * Sets the minimumPinLength * Indicates the minimum length of startup pin. Valid values 4 to 20 * * @param int $val The value of the minimumPinLength * * @return BitLockerSystemDrivePolicy */ public function setMinimumPinLength($val) { $this->_propDict["minimumPinLength"] = $val; return $this; } /** * Gets the prebootRecoveryEnableMessageAndUrl * Enable pre-boot recovery message and Url. If requireStartupAuthentication is false, this value does not affect. * * @return bool|null The prebootRecoveryEnableMessageAndUrl */ public function getPrebootRecoveryEnableMessageAndUrl() { if (array_key_exists("prebootRecoveryEnableMessageAndUrl", $this->_propDict)) { return $this->_propDict["prebootRecoveryEnableMessageAndUrl"]; } else { return null; } } /** * Sets the prebootRecoveryEnableMessageAndUrl * Enable pre-boot recovery message and Url. If requireStartupAuthentication is false, this value does not affect. * * @param bool $val The value of the prebootRecoveryEnableMessageAndUrl * * @return BitLockerSystemDrivePolicy */ public function setPrebootRecoveryEnableMessageAndUrl($val) { $this->_propDict["prebootRecoveryEnableMessageAndUrl"] = $val; return $this; } /** * Gets the prebootRecoveryMessage * Defines a custom recovery message. * * @return string|null The prebootRecoveryMessage */ public function getPrebootRecoveryMessage() { if (array_key_exists("prebootRecoveryMessage", $this->_propDict)) { return $this->_propDict["prebootRecoveryMessage"]; } else { return null; } } /** * Sets the prebootRecoveryMessage * Defines a custom recovery message. * * @param string $val The value of the prebootRecoveryMessage * * @return BitLockerSystemDrivePolicy */ public function setPrebootRecoveryMessage($val) { $this->_propDict["prebootRecoveryMessage"] = $val; return $this; } /** * Gets the prebootRecoveryUrl * Defines a custom recovery URL. * * @return string|null The prebootRecoveryUrl */ public function getPrebootRecoveryUrl() { if (array_key_exists("prebootRecoveryUrl", $this->_propDict)) { return $this->_propDict["prebootRecoveryUrl"]; } else { return null; } } /** * Sets the prebootRecoveryUrl * Defines a custom recovery URL. * * @param string $val The value of the prebootRecoveryUrl * * @return BitLockerSystemDrivePolicy */ public function setPrebootRecoveryUrl($val) { $this->_propDict["prebootRecoveryUrl"] = $val; return $this; } /** * Gets the recoveryOptions * Allows to recover BitLocker encrypted operating system drives in the absence of the required startup key information. This policy setting is applied when you turn on BitLocker. * * @return BitLockerRecoveryOptions|null The recoveryOptions */ public function getRecoveryOptions() { if (array_key_exists("recoveryOptions", $this->_propDict)) { if (is_a($this->_propDict["recoveryOptions"], "\Beta\Microsoft\Graph\Model\BitLockerRecoveryOptions") || is_null($this->_propDict["recoveryOptions"])) { return $this->_propDict["recoveryOptions"]; } else { $this->_propDict["recoveryOptions"] = new BitLockerRecoveryOptions($this->_propDict["recoveryOptions"]); return $this->_propDict["recoveryOptions"]; } } return null; } /** * Sets the recoveryOptions * Allows to recover BitLocker encrypted operating system drives in the absence of the required startup key information. This policy setting is applied when you turn on BitLocker. * * @param BitLockerRecoveryOptions $val The value to assign to the recoveryOptions * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setRecoveryOptions($val) { $this->_propDict["recoveryOptions"] = $val; return $this; } /** * Gets the startupAuthenticationBlockWithoutTpmChip * Indicates whether to allow BitLocker without a compatible TPM (requires a password or a startup key on a USB flash drive). * * @return bool|null The startupAuthenticationBlockWithoutTpmChip */ public function getStartupAuthenticationBlockWithoutTpmChip() { if (array_key_exists("startupAuthenticationBlockWithoutTpmChip", $this->_propDict)) { return $this->_propDict["startupAuthenticationBlockWithoutTpmChip"]; } else { return null; } } /** * Sets the startupAuthenticationBlockWithoutTpmChip * Indicates whether to allow BitLocker without a compatible TPM (requires a password or a startup key on a USB flash drive). * * @param bool $val The value of the startupAuthenticationBlockWithoutTpmChip * * @return BitLockerSystemDrivePolicy */ public function setStartupAuthenticationBlockWithoutTpmChip($val) { $this->_propDict["startupAuthenticationBlockWithoutTpmChip"] = $val; return $this; } /** * Gets the startupAuthenticationRequired * Require additional authentication at startup. * * @return bool|null The startupAuthenticationRequired */ public function getStartupAuthenticationRequired() { if (array_key_exists("startupAuthenticationRequired", $this->_propDict)) { return $this->_propDict["startupAuthenticationRequired"]; } else { return null; } } /** * Sets the startupAuthenticationRequired * Require additional authentication at startup. * * @param bool $val The value of the startupAuthenticationRequired * * @return BitLockerSystemDrivePolicy */ public function setStartupAuthenticationRequired($val) { $this->_propDict["startupAuthenticationRequired"] = $val; return $this; } /** * Gets the startupAuthenticationTpmKeyUsage * Indicates if TPM startup key is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @return ConfigurationUsage|null The startupAuthenticationTpmKeyUsage */ public function getStartupAuthenticationTpmKeyUsage() { if (array_key_exists("startupAuthenticationTpmKeyUsage", $this->_propDict)) { if (is_a($this->_propDict["startupAuthenticationTpmKeyUsage"], "\Beta\Microsoft\Graph\Model\ConfigurationUsage") || is_null($this->_propDict["startupAuthenticationTpmKeyUsage"])) { return $this->_propDict["startupAuthenticationTpmKeyUsage"]; } else { $this->_propDict["startupAuthenticationTpmKeyUsage"] = new ConfigurationUsage($this->_propDict["startupAuthenticationTpmKeyUsage"]); return $this->_propDict["startupAuthenticationTpmKeyUsage"]; } } return null; } /** * Sets the startupAuthenticationTpmKeyUsage * Indicates if TPM startup key is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @param ConfigurationUsage $val The value to assign to the startupAuthenticationTpmKeyUsage * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setStartupAuthenticationTpmKeyUsage($val) { $this->_propDict["startupAuthenticationTpmKeyUsage"] = $val; return $this; } /** * Gets the startupAuthenticationTpmPinAndKeyUsage * Indicates if TPM startup pin key and key are allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @return ConfigurationUsage|null The startupAuthenticationTpmPinAndKeyUsage */ public function getStartupAuthenticationTpmPinAndKeyUsage() { if (array_key_exists("startupAuthenticationTpmPinAndKeyUsage", $this->_propDict)) { if (is_a($this->_propDict["startupAuthenticationTpmPinAndKeyUsage"], "\Beta\Microsoft\Graph\Model\ConfigurationUsage") || is_null($this->_propDict["startupAuthenticationTpmPinAndKeyUsage"])) { return $this->_propDict["startupAuthenticationTpmPinAndKeyUsage"]; } else { $this->_propDict["startupAuthenticationTpmPinAndKeyUsage"] = new ConfigurationUsage($this->_propDict["startupAuthenticationTpmPinAndKeyUsage"]); return $this->_propDict["startupAuthenticationTpmPinAndKeyUsage"]; } } return null; } /** * Sets the startupAuthenticationTpmPinAndKeyUsage * Indicates if TPM startup pin key and key are allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @param ConfigurationUsage $val The value to assign to the startupAuthenticationTpmPinAndKeyUsage * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setStartupAuthenticationTpmPinAndKeyUsage($val) { $this->_propDict["startupAuthenticationTpmPinAndKeyUsage"] = $val; return $this; } /** * Gets the startupAuthenticationTpmPinUsage * Indicates if TPM startup pin is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @return ConfigurationUsage|null The startupAuthenticationTpmPinUsage */ public function getStartupAuthenticationTpmPinUsage() { if (array_key_exists("startupAuthenticationTpmPinUsage", $this->_propDict)) { if (is_a($this->_propDict["startupAuthenticationTpmPinUsage"], "\Beta\Microsoft\Graph\Model\ConfigurationUsage") || is_null($this->_propDict["startupAuthenticationTpmPinUsage"])) { return $this->_propDict["startupAuthenticationTpmPinUsage"]; } else { $this->_propDict["startupAuthenticationTpmPinUsage"] = new ConfigurationUsage($this->_propDict["startupAuthenticationTpmPinUsage"]); return $this->_propDict["startupAuthenticationTpmPinUsage"]; } } return null; } /** * Sets the startupAuthenticationTpmPinUsage * Indicates if TPM startup pin is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @param ConfigurationUsage $val The value to assign to the startupAuthenticationTpmPinUsage * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setStartupAuthenticationTpmPinUsage($val) { $this->_propDict["startupAuthenticationTpmPinUsage"] = $val; return $this; } /** * Gets the startupAuthenticationTpmUsage * Indicates if TPM startup is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @return ConfigurationUsage|null The startupAuthenticationTpmUsage */ public function getStartupAuthenticationTpmUsage() { if (array_key_exists("startupAuthenticationTpmUsage", $this->_propDict)) { if (is_a($this->_propDict["startupAuthenticationTpmUsage"], "\Beta\Microsoft\Graph\Model\ConfigurationUsage") || is_null($this->_propDict["startupAuthenticationTpmUsage"])) { return $this->_propDict["startupAuthenticationTpmUsage"]; } else { $this->_propDict["startupAuthenticationTpmUsage"] = new ConfigurationUsage($this->_propDict["startupAuthenticationTpmUsage"]); return $this->_propDict["startupAuthenticationTpmUsage"]; } } return null; } /** * Sets the startupAuthenticationTpmUsage * Indicates if TPM startup is allowed/required/disallowed. Possible values are: blocked, required, allowed, notConfigured. * * @param ConfigurationUsage $val The value to assign to the startupAuthenticationTpmUsage * * @return BitLockerSystemDrivePolicy The BitLockerSystemDrivePolicy */ public function setStartupAuthenticationTpmUsage($val) { $this->_propDict["startupAuthenticationTpmUsage"] = $val; return $this; } }