Skip to main content

"a device key does not allow this"

This computer signed in with a device key, and the key was not given what the command asks for. Do it where the account signs in with its password, VK ID, Yandex ID or a code from a phone, or make a key with the right you need.

The error comes as one of these texts:

  • "a device key does not allow this: do it where the account signs in with its password, VK ID or Yandex ID";
  • "this device key may not see the plan, so it cannot send visitors to a computer on the internet".

The exit code is 5.

What to do​

  1. Payments, the password, the email, sign-in methods, keys and devices are never open to a key: run the command on a computer where you signed in with your password, VK ID, Yandex ID or a code from a phone.

  2. Only a key made with --protection can protect addresses (proximamp access, proximamp service access), and only a key with --usage can open a tunnel to a computer on the internet (--host with a public address), if your plan allows it.

  3. A key's rights don't change: make a new one with the right you need, sign in with it on the server and revoke the old one:

    proximamp keys create --name build-server --usage # a new key, here with the --usage right
    proximamp login --key-stdin < key.txt # on the server
    sudo proximamp service uninstall --yes # if the service signed in with the key: remove it
    sudo proximamp service install -c proximamp.yml --key-stdin < key.txt # and install it with the new key
    proximamp keys # the keys' ids, where you ran create
    proximamp keys revoke <id> # the old key, there too

    The reinstalled service comes back on its old addresses only if proximamp.yml names them in address: (the config file); before the uninstall, sudo proximamp service status shows the current ones.

    In PowerShell, give the key from a file like this (install the service in an administrator's terminal):

    Get-Content key.txt | proximamp login --key-stdin
    proximamp service uninstall --yes
    Get-Content key.txt | proximamp service install -c proximamp.yml --key-stdin

If that didn't help​

Click "Ask a question" at the bottom of the page and include the exact error text and the output of proximamp version.