From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 2C6CB1FF13E for ; Fri, 17 Apr 2026 13:28:14 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0D7AA1EFBD; Fri, 17 Apr 2026 13:28:14 +0200 (CEST) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Fri, 17 Apr 2026 13:28:06 +0200 Message-Id: Subject: Re: [PATCH proxmox/yew-pwt/datacenter-manager/installer v3 00/38] add auto-installer integration From: "Lukas Wagner" To: "Dominik Csapak" , "Lukas Wagner" , "Christoph Heiss" , X-Mailer: aerc 0.21.0-0-g5549850facc2-dirty References: <20260403165437.2166551-1-c.heiss@proxmox.com> <8079685a-be9c-4e28-954c-bd1debe7ce7d@proxmox.com> In-Reply-To: X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1776425206937 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.096 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment POISEN_SPAM_PILL 0.1 Meta: its spam POISEN_SPAM_PILL_1 0.1 random spam to be learned in bayes POISEN_SPAM_PILL_3 0.1 random spam to be learned in bayes SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: F3FR5ZE7IMUEK2CRCRKO3XFSRYYAYMQK X-Message-ID-Hash: F3FR5ZE7IMUEK2CRCRKO3XFSRYYAYMQK X-MailFrom: l.wagner@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Datacenter Manager development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: On Fri Apr 17, 2026 at 11:48 AM CEST, Dominik Csapak wrote: > > > On 4/17/26 11:23 AM, Lukas Wagner wrote: >> On Fri Apr 17, 2026 at 11:10 AM CEST, Dominik Csapak wrote: >>> also two things i forgot: >>> >>> i think we could make the endpoint available without authentication? >>> at least that's what i would have expected, since the current >>> http endpoints also had to be public? >>> >>> second things is about the tokens + acl, I'd probably >>> use the existing token acl mechanism, so instead of >>> having custom tokens + a token list per answer, >>> >>> use the standard pdm tokens + an acl path (e.g. >>> /system/auto-installation/answers/ ) maybe a separate privilege >>> could make sense here, so the token does not have access >>> to anything else? >>> >>=20 >> Check out my response to v2, which is (I think) the main reason why it >> is implemented like it is right now: >>=20 >> https://lore.proxmox.com/all/DETMUXY1Q877.32G593TWC52WW@proxmox.com/T/#u >>=20 > > ok i see, but i have some counter arguments to that, for brevity, here=20 > is part of your response from that mail: > > --- > I think this is dangerous. > > While the answer-file does not leak any passwords (seems like the root > password is hashed), it still contains semi-sensitive data (email address= , > SSH key, FQDN, etc.). Also, since each POST creates a new entry in the > installations JSON file, an unauthenticated user could abuse this to > make the PDM system run out of disk space (or simply disturb operations > by creating bogus entries). > --- > > > We already had the requirement for a http endpoint to be unauthenticated > so for a secured and protected network, this should be a non issue Yes, but I think it's a big difference if we integrate something like this into PDM natively. There will always be users who, against our recommendations, expose the PDM web interface directly to the internet or other untrusted network environments. I would very much argue against returning any kind of (semi)-sensitive information from the API without proper access controls, even if it is opt-in. > > also i'm not for making it unauthenticated for all responses, but > make it the admins choice. > > as for the DOS vector of pdm, we could check if the user was > authenticated, and only generate the data then. There is no user information available when the installer requests the answer file, how would we check it? Sorry, maybe I'm misunderstanding your proposal here :) > > but how much data is that really? e.g. each api call (authenticated or=20 > not) creates a new line in the access log. so with enough api calls, > i can fill up the disk too... You're right about the access log. That being said, an unauthenticated user would still be able to create bogus entries installation entries that would show up in the UI.