Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License. See License.txt in the project root for
license information.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*/
package com.microsoft.azure.management.compute;
import com.microsoft.azure.management.apigeneration.Fluent;
import rx.Observable;
Virtual machine encryption related operations.
/**
* Virtual machine encryption related operations.
*/
@Fluent
public interface VirtualMachineEncryption {
Enable encryption for virtual machine disks.
Legacy encryption extension will be used to enable encryption.
Params: - keyVaultId – resource ID of the key vault to store the disk encryption key
- aadClientId – client ID of an AAD application which has permission to the key vault
- aadSecret – client secret corresponding to the aadClientId
Returns: a representation of the deferred computation of this call, returning the current volume encryption status
/**
* Enable encryption for virtual machine disks.
* Legacy encryption extension will be used to enable encryption.
*
* @param keyVaultId resource ID of the key vault to store the disk encryption key
* @param aadClientId client ID of an AAD application which has permission to the key vault
* @param aadSecret client secret corresponding to the aadClientId
*
* @return a representation of the deferred computation of this call, returning the current volume encryption status
*/
Observable<DiskVolumeEncryptionMonitor> enableAsync(String keyVaultId, String aadClientId, String aadSecret);
Enable encryption for virtual machine disks.
NoAAD encryption extension will be used to enable encryption.
Params: - keyVaultId – resource ID of the key vault to store the disk encryption key
Returns: a representation of the deferred computation of this call, returning the current volume encryption status
/**
* Enable encryption for virtual machine disks.
* NoAAD encryption extension will be used to enable encryption.
*
* @param keyVaultId resource ID of the key vault to store the disk encryption key
* @return a representation of the deferred computation of this call, returning the current volume encryption status
*/
Observable<DiskVolumeEncryptionMonitor> enableAsync(String keyVaultId);
Enable encryption for Windows virtual machine disks.
Params: - encryptionSettings – encryption settings for windows virtual machine
Returns: a representation of the deferred computation of this call, returning the current volume encryption status
/**
* Enable encryption for Windows virtual machine disks.
*
* @param encryptionSettings encryption settings for windows virtual machine
* @return a representation of the deferred computation of this call, returning the current volume encryption status
*/
Observable<DiskVolumeEncryptionMonitor> enableAsync(WindowsVMDiskEncryptionConfiguration encryptionSettings);
Enable encryption for Linux virtual machine disks.
Params: - encryptionSettings – encryption settings for windows virtual machine
Returns: a representation of the deferred computation of this call, returning the current volume encryption status
/**
* Enable encryption for Linux virtual machine disks.
*
* @param encryptionSettings encryption settings for windows virtual machine
*
* @return a representation of the deferred computation of this call, returning the current volume encryption status
*/
Observable<DiskVolumeEncryptionMonitor> enableAsync(LinuxVMDiskEncryptionConfiguration encryptionSettings);
Disable encryption for virtual machine disks.
Params: - volumeType – volume type to disable encryption
Returns: a representation of the deferred computation of this call, returning the current volume decryption status
/**
* Disable encryption for virtual machine disks.
* @param volumeType volume type to disable encryption
* @return a representation of the deferred computation of this call, returning the current volume decryption status
*/
Observable<DiskVolumeEncryptionMonitor> disableAsync(DiskVolumeType volumeType);
Returns: observable that emits current volume encryption/decryption status
/**
* @return observable that emits current volume encryption/decryption status
*/
Observable<DiskVolumeEncryptionMonitor> getMonitorAsync();
Enable encryption for virtual machine disks.
Params: - keyVaultId – resource ID of the key vault to store the disk encryption key
- aadClientId – client ID of an AAD application which has permission to the key vault
- aadSecret – client secret corresponding to the aadClientId
Returns: current volume decryption status
/**
* Enable encryption for virtual machine disks.
*
* @param keyVaultId resource ID of the key vault to store the disk encryption key
* @param aadClientId client ID of an AAD application which has permission to the key vault
* @param aadSecret client secret corresponding to the aadClientId
*
* @return current volume decryption status
*/
DiskVolumeEncryptionMonitor enable(String keyVaultId, String aadClientId, String aadSecret);
Enable encryption for virtual machine disks.
Params: - keyVaultId – resource ID of the key vault to store the disk encryption key
Returns: current volume decryption status
/**
* Enable encryption for virtual machine disks.
*
* @param keyVaultId resource ID of the key vault to store the disk encryption key
*
* @return current volume decryption status
*/
DiskVolumeEncryptionMonitor enable(String keyVaultId);
Enable encryption for Windows virtual machine disks.
Params: - encryptionSettings – encryption settings for windows virtual machine
Returns: current volume encryption status
/**
* Enable encryption for Windows virtual machine disks.
*
* @param encryptionSettings encryption settings for windows virtual machine
*
* @return current volume encryption status
*/
DiskVolumeEncryptionMonitor enable(WindowsVMDiskEncryptionConfiguration encryptionSettings);
Enable encryption for Linux virtual machine disks.
Params: - encryptionSettings – encryption settings for windows virtual machine
Returns: current volume encryption status
/**
* Enable encryption for Linux virtual machine disks.
*
* @param encryptionSettings encryption settings for windows virtual machine
*
* @return current volume encryption status
*/
DiskVolumeEncryptionMonitor enable(LinuxVMDiskEncryptionConfiguration encryptionSettings);
Disable encryption for virtual machine disks.
Params: - volumeType – volume type to disable encryption
Returns: current volume encryption status
/**
* Disable encryption for virtual machine disks.
* @param volumeType volume type to disable encryption
*
* @return current volume encryption status
*/
DiskVolumeEncryptionMonitor disable(DiskVolumeType volumeType);
Returns: current volume decryption status
/**
* @return current volume decryption status
*/
DiskVolumeEncryptionMonitor getMonitor();
}