Knife fails when running as non-administrative user on Windows
Author: decoyjoeCreated Jun 6, 2023Updated Sep 18, 2026
LabelsTriage: Confirmed
Description
When running knife from the latest Chef Workstation (23.5.1040) as a non-administrative user on Windows, the knife command fails with the following error:
> knife status
ERROR: Win32::Registry::Error: Access is denied.It looks like it's trying to create a registry key at HKEY_LOCAL_MACHINE\Software\Progress\Authentication, which will not work for a non-admin user.
Chef Version
> chef -v
Chef Workstation version: 23.5.1040
Chef InSpec version: 5.21.29
Chef CLI version: 5.6.11
Chef Habitat version: 1.6.652
Test Kitchen version: 3.5.0
Cookstyle version: 7.32.2
Chef Infra Client version: 18.2.7Platform Version
Windows Server 2022
Stacktrace
> knife status -VV
INFO: Sending query: *:*
C:/opscode/chef-workstation/embedded/lib/ruby/3.1.0/win32/registry.rb:296:in `CreateKey': Access is denied. (Win32::Registry::Error)
from C:/opscode/chef-workstation/embedded/lib/ruby/3.1.0/win32/registry.rb:458:in `create'
from C:/opscode/chef-workstation/embedded/lib/ruby/3.1.0/win32/registry.rb:549:in `create'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:370:in `block in create_missing'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:366:in `each'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:366:in `create_missing'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:112:in `create_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:205:in `rescue in get_cert_password'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:175:in `get_cert_password'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:303:in `retrieve_certificate_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:98:in `retrieve_certificate_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:149:in `load_signing_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:45:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:104:in `new'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:104:in `block in initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:103:in `each'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:103:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/server_api.rb:40:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:40:in `new'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:40:in `rest'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:153:in `call_rest_service'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:80:in `search'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife/status.rb:83:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:494:in `block in run_with_pretty_exceptions'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/local_mode.rb:42:in `with_server_connectivity'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:493:in `run_with_pretty_exceptions'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:233:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/application/knife.rb:165:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/bin/knife:24:in `<top (required)>'
from C:/opscode/chef-workstation/bin/knife:423:in `load'
from C:/opscode/chef-workstation/bin/knife:423:in `<main>'
C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:164:in `key_exists!': Registry key HKEY_LOCAL_MACHINE\\Software\\Progress\\Authentication does not exist (Chef::Exceptions::Win32RegKeyMissing)
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/win32/registry.rb:58:in `get_values'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:181:in `get_cert_password'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:303:in `retrieve_certificate_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:98:in `retrieve_certificate_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:149:in `load_signing_key'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http/authenticator.rb:45:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:104:in `new'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:104:in `block in initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:103:in `each'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/http.rb:103:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/server_api.rb:40:in `initialize'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:40:in `new'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:40:in `rest'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:153:in `call_rest_service'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/search/query.rb:80:in `search'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife/status.rb:83:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:494:in `block in run_with_pretty_exceptions'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7-x64-mingw-ucrt/lib/chef/local_mode.rb:42:in `with_server_connectivity'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:493:in `run_with_pretty_exceptions'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/knife.rb:233:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/lib/chef/application/knife.rb:165:in `run'
from C:/opscode/chef-workstation/embedded/lib/ruby/gems/3.1.0/gems/knife-18.2.7/bin/knife:24:in `<top (required)>'
from C:/opscode/chef-workstation/bin/knife:423:in `load'
from C:/opscode/chef-workstation/bin/knife:423:in `<main>'Source: chef/chef