In the current cloud, VM migration that moves VMs between physical host machines is indispensable. For cloud providers, before shutting down the physical host machines for maintenance, migration is used to temporarily save VMs to other physical host machine. For the cloud user, migration is used to move a VM to a location which is geographically close to the end user. These VM migrations can be performed very easily and are only limited by the scope of the VM administrator’s contract. However, the problem lies on the permission of the data in VM. In recent years, with the widespread use of IoT, various types of data can be stored in cloud’s VMs through web services. The huge amount of data collected by IoT devices requires close attention to manage because it could be very closely related to the information of an individual. However, there is no mechanism for checking data permission in VM during VM migration, and there is concern that inappropriate data movement may occur. This includes the unintended risky movement of inappropriate data which could be malicious data. Therefore, we proposed a mechanism to ensure compliance with the conditions granted by the data owner, the country regulations, and the organization regulations during VM migration. By constructing the proposed mechanism in blockchain, we can prevent malicious tampering and thus enable robust VM migration control.