Microsoft Azure supports several Linux distributions, and Linux is a first-class citizen in the Azure world. When provisioning a new Linux virtual machine we have several methods to authenticate the newly created Linux VM. We can use passwords, SSH Keys, and Azure AD.
Using the traditional password method, especially when using a VM with public IP, will expose the VM to a potential brute-force attack. on the other hand, using SSH Keys for authentication helps to mitigate such risk because it eliminates the use of passwords to log in.
Read more at source: http://techgenix.com/managing-linux-vm-azure/