Bug 52780

Summary: salt-api: Internal Server Error
Product: Branch p10 Reporter: Михаил Ногин <noginmo>
Component: salt-apiAssignee: Anton Vyatkin <toni>
Status: RESOLVED FIXED QA Contact: qa-p10 <qa-p10>
Severity: normal    
Priority: P5    
Version: не указана   
Hardware: x86_64   
OS: Linux   

Description Михаил Ногин 2025-01-21 14:28:07 MSK
Стенды:
Workstation 10.2 x86-64
Workstation K 10.4 x86-64
Education 10.4 x86-64 / KDE
Server 10.2 x86-64

Версия пакета: salt-api-3007.1-alt0.p10.1

Шаги воспроизведения:

1. Установить пакеты:
  # apt-get install salt-master salt-api
2. Настроить api:
  # cat > /etc/salt/master.d/salt-api.conf <<EOF
rest_cherrypy:
  port: 8999
  disable_ssl: True
EOF

# cat > /etc/salt/master.d/eauth.conf <<EOF
external_auth:
  pam:
    <USER>:
      - '@wheel'
      - '@runner'
      - '@jobs'
EOF
Вместо <USER>, указать пользователя от которого будет исполняться команда в шаге № 4

3.Запустить сервисы: 
   # systemctl start salt-master salt-api && sleep 5; systemctl status salt-master salt-api
4. Проверить подключение к api от пользователя 
   $ curl -si localhost:8999/login -H "Accept: application/json" -d username='<USER>' -d password='<PASSWORD>' -d eauth='pam'
   Вместо <USER> и <PASSWORD>, указать пользователя от которого исполняется команда и пароль от него


Ожидаемый результат:

HTTP/1.1 200 OK
Content-Type: application/json
Server: CherryPy/18.9.0
Date: Mon, 09 Dec 2024 13:25:29 GMT
Allow: GET, HEAD, POST
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: GET, POST
Access-Control-Allow-Credentials: true
X-Auth-Token: d6c62b1b5a73b264a4878363dd0c0976bb5e1417
Vary: Accept-Encoding
Content-Length: 199
Set-Cookie: session_id=d6c62b1b5a73b264a4878363dd0c0976bb5e1417; expires=Mon, 09 Dec 2024 23:25:29 GMT; Max-Age=36000; Path=/

{"return": [{"token": "d6c62b1b5a73b264a4878363dd0c0976bb5e1417", "expire": 1733793929.6105273, "start": 1733750729.6105266, "user": "<USER>", "eauth": "pam", "perms": ["@jobs", "@runner", "@wheel"]}]}

Реальный результат:

HTTP/1.1 500 Internal Server Error
Content-Type: application/json
Server: CherryPy/18.9.0
Date: Tue, 21 Jan 2025 11:04:12 GMT
Allow: GET, HEAD, POST
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: GET, POST
Access-Control-Allow-Credentials: true
Vary: Accept-Encoding
Content-Length: 57
Set-Cookie: session_id=9062dd6ccc4371727339ac2fb89f2f6c6c1c3c18; expires=Tue, 21 Jan 2025 21:04:12 GMT; Max-Age=36000; Path=/

{"status": 500, "return": "An unexpected error occurred"}
Comment 1 Repository Robot 2025-02-03 10:18:10 MSK
salt-3007.1-alt0.p10.2 -> p10:

 Thu Jan 23 2025 Anton Vyatkin <toni@altlinux> 3007.1-alt0.p10.2
 - Fix salt-api (Closes: #52780).