[DNSOP] Re: [EXTERNAL] Re: Advice sought: DNS record type for FedCM well-known file delegation

Will Bartlett <wibartle@microsoft.com> Thu, 09 April 2026 18:57 UTC

Return-Path: <wibartle@microsoft.com>
X-Original-To: dnsop@mail2.ietf.org
Delivered-To: dnsop@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id B412CD8EA081 for <dnsop@mail2.ietf.org>; Thu, 9 Apr 2026 11:57:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1775761055; bh=EOkXFNBY5hUlCZkmSEDHaQiDMHCaYcle2/X3Mu3YFDo=; h=From:To:CC:Subject:Date:References:In-Reply-To; b=VhcLdbgBp8orFaDEM2P66ALbqOypDlvkw9VQAOzQujDdvwarfTds5uJ4BNBm9zVbl HO54X+Ia1c3k3iOE8HTYfQ5g9Ho5ggoYGt2+L0+raGLSOjuPWLeL1xIt0G7q71lCbx ZWB9B9Q2Km9dmv+qAKseZzPn4A13vv1YrTVMJva8=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_FONT_LOW_CONTRAST=0.001, HTML_MESSAGE=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hEVmVz6eu2MV for <dnsop@mail2.ietf.org>; Thu, 9 Apr 2026 11:57:34 -0700 (PDT)
Received: from CY3PR00CU001.outbound.protection.outlook.com (mail-westcentralusazon11021073.outbound.protection.outlook.com [40.93.199.73]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 59518D8EA06C for <dnsop@ietf.org>; Thu, 9 Apr 2026 11:57:34 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HWpg8BK0ABwC+2U6rGeaT43ZnRTaH2gStRXmV4kLosoSDQe9A/gzL/S9mgoqnYdabjilZPWZNliuGqYXjWSITtWJErpJelsrCNoUJgvfHWUALk3I/vvSXLV09fk/C2TTaXR8C/Yk1yINQm2SegujVDMzJBPXFXWGyR1O5Vw00j9vdkh0jPryItytuKpD9tdOFDf79d+9ooHGAPITluP8fEH1/KNaSCWMeIiud/Ynpi+1LOvjipRZOLlouHAwrUIkwbrkBRg/jNHh1bc0m7UwYdA1Qr9CWc9DEUpP2xiTrjYxIpu5HwYbzWSDYp4oyZMQR6mPmBD5VNclvM4g606UZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=T1kEYu5GVG8TR9/Dj1w+Ibs4ebIPQztL8L/SwnX2LeY=; b=nS7JWzzVJY4nVqeMybfjvhQe8VexjMKOyr09aRCUSd3KcCz9DKdx1N3DWkzHzcjT8dA9JYJZ4UADjTQfcgb83n3XESspVZGIUvMnZvN/daUWeU8swDhxZ+rijql5jOsI+RZRkhjoEeRvm8C8+l5Ms48xtyEfbImw82bgYNXKxZPkyBSSbqUp+Np7IuIsa52oyuFG1vCJsmqmlg+SPOxvaFhwPKCd/im8knAjHjsE3oqUu/X/M41BOQDeCv2LVZDAo+TLt29+lcH/XGJb3w+xFrR5LEIMEx0DBZg2exRYgr9/lXEbU0JrZddymIX08aKKVfBng3hXsVQhsy+68QCWLQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T1kEYu5GVG8TR9/Dj1w+Ibs4ebIPQztL8L/SwnX2LeY=; b=h56n45oS2Q4kLQgxCe0O/pb8dI2qde8704SLp8jlfvHJpLfQ7WAMlBTp30W7RLzXqCrgyiXh0AlLnp2L9A7C2Pm0ncWLZlKs3CJ0WK4lUmYYYI1EQhdYlqUyCn2xcxqqrUVg8coV3bW/R90AnynVrj/OotL3jQWapy7pYOMr1Hg=
Received: from DS0PR00MB2884.namprd00.prod.outlook.com (2603:10b6:8:30c::17) by DM4PR00MB2442.namprd00.prod.outlook.com (2603:10b6:8:245::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9845.0; Thu, 9 Apr 2026 18:57:23 +0000
Received: from DS0PR00MB2884.namprd00.prod.outlook.com ([fe80::5bf3:ae70:1d37:910e]) by DS0PR00MB2884.namprd00.prod.outlook.com ([fe80::5bf3:ae70:1d37:910e%4]) with mapi id 15.20.9840.000; Thu, 9 Apr 2026 18:57:23 +0000
From: Will Bartlett <wibartle@microsoft.com>
To: Will Bartlett <wibartle=40microsoft.com@dmarc.ietf.org>, Ben Schwartz <bemasc=40meta.com@dmarc.ietf.org>
Thread-Topic: [DNSOP] Re: [EXTERNAL] Re: Advice sought: DNS record type for FedCM well-known file delegation
Thread-Index: AQHcyFKzO+dLyMAmy0aJBr6sz/ZixA==
Date: Thu, 09 Apr 2026 18:57:23 +0000
Message-ID: <DS0PR00MB2884388AB2C45EB390A01C2DD3582@DS0PR00MB2884.namprd00.prod.outlook.com>
References: <PH0PR00MB287470B5624C4161156CB2E6D35DA@PH0PR00MB2874.namprd00.prod.outlook.com> <CAOdQrVMnWY+STUfjj5CHsfjYguQmiWc2vsX1EKtOvVS-qPxKVQ@mail.gmail.com> <DS0PR00MB28841C9DA7BF3AEBB5AF65E4D3582@DS0PR00MB2884.namprd00.prod.outlook.com>
In-Reply-To: <DS0PR00MB28841C9DA7BF3AEBB5AF65E4D3582@DS0PR00MB2884.namprd00.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_Enabled=True;MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_SetDate=2026-04-09T18:57:22.211Z;MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_Name=Public;MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_ContentBits=1;MSIP_Label_87867195-f2b8-4ac2-b0b6-6bb73cb33afc_Method=Standard;
authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=microsoft.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DS0PR00MB2884:EE_|DM4PR00MB2442:EE_
x-ms-office365-filtering-correlation-id: 09ea894c-00fc-4626-a6aa-08de9669d5a5
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|376014|8096899003|7053199004|13003099007|38070700021|56012099003|18002099003|22082099003;
x-microsoft-antispam-message-info: OOnQFKLD0Y5Cwj6mp8pQ52y3pvrLzxf7i7Q/DldZTSUXtX4Ue2piO4ME+0ZoJiqI0NKFqgjSY2rBq/PFl0kmEa+TNyVN7LRiEKJr21ezChJ5CBNREDl8UQ+juIZxNmY4B5nTQ4WG21KIZxuoEJgsa2DpKjCqvQ/A+axFKHusCQsHd/Hezn9ZJoAZFC+4ph2x1T+iYl1LjBBuSs3VsziZZ15FfLNEDIhYfBn5EUqc/Kzt3+cHKRXJC5JUxjPgCG6m2rcE8pfz1YkwNf2pGv+rBvjWUqxPMowcB8gSkUjifKsGOY3UAwZGh1oUex7gLd9KXm8sOMB84XSJ0XXOokpDVehHxfAp7VaxpDN8G5rP4T4unh2Sx4zGhYGwQsG1QrY30mKEqNzi6qCIRG2CXtMRxPZ7bpWWWiQz0kU+KnSn8ywl6dz85BRSPaTr93NoWz5CwQp8OyA62c4k8cpYPHbUSK0AxW9IzCbf5Mh9x25CJDare0nVTtQ6j2nkL00PpjgQtC0HPDQM36aLAzUZL7ORYyzAeDtX6Mk/uaw1do/sPjBkPQZgWh85p4BWsfJ3bsBfAYfueppYJSsicWjclnSHMUdftW7/M3lrYiqmjMaDZytptyQK913/3bGnDEgeOKIvOa3bPvKcRwoWrUtf2Lw2477b0KJLem+bGO9xiMQnnsiQfPY+wlsO1hbAqcFAtXVwfCQwEUgfVagiVpLdFXJsUyEweoNqkVcSLzm1/9UH9b/MNCnokvlHeIdAyTjeqRYE324IRi9Mtkfbri1sMq8Ha5UgBuJ1HApPcIvC/Ja8GntpE2KXB9XSGuimv5rbqmxShTUGbMYzqxRWb4IG1CsEytXepHkZHZOYeyQJnz6zXu5FoCH19ev0obwHQFZkRq9wKEKVswpxjopMTCl4jsKlvLmDijmyYcQkU3vgP5/ZS+kSf3diH71sOLWh8SIlO0HVaMxVjacaCc7/aq7M3g0kF6NfYgLgAoC1RyKAzpsz5ye6HnntwEr0WO3HrO/Vgd6y
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR00MB2884.namprd00.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(8096899003)(7053199004)(13003099007)(38070700021)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: Lp4Ff9becbso9VzTnNzxt4VPBP3EC+2pNrdhUou6ArEZarJBA1PF01K+kYQV4/MCI/0Ku/j/4ov3CK6wjzh2d1v9E4Eteo0vLdBogFQISMCLzy5C2l8rjDl8iGmRzMAyosd+rGpgPRicq+GkBIYITGb+eG3h8bJxYFM9mbcTgKineyze0JhczoefZ0xJZgqYFTddLej75zrJE0KoXM6ERe3xXVTjexRV8U6fTzxX3MYvneyuB14xe1pLotJul1ukObcACBLu6TQmPnYFY8k7Mk7+z34ah6Ht88VjC5vMToue0BmKHbn8kdCmMQHbl/q/ykfxJYK0eEOEeY17U0/RLGZhuwaGx1sXaIL4H48D1isv6a+KS8d/skhX6gVeQTN7MJ9zJKpMzCOtEdE/haEIIBF7OELOpfCBcIAY1yy/8LKEC9VntNJ4f8aR6pp3Tmg9VjSTxIyK4j2Xm/Rws6J6pHjZrFLOAEpEaLR3LS8FBUhfocF/D1Xqz1T4/0Xsw6Gsrc0gaqh1sen8SmJluDGfFh6BEkN08631bHHqSnoU+R7UYjvdA3UBwCYiuDHBvfDn4c05JQH92SxX8VwFNyPDA50zWVbrbatIWLL3rPwxB28oC8h/O8Pjn+90jjTaGCrFD0Eay9D7rsra08FFQ3nuZJV7NPGjSOUbRpsPRhDRiD5walRJ9/AUMs1fFxtWNs5izIMbYPCmYavogH87y+rKIKwcoxmSvh/TNARWjWfD36ecAvPuVmItf6s6NL4orZbEMg/m47+4NbXPVXhf1QFHOYY1NruUilAcsVH0A7fe3MVAefPZ0mdCrJJn4eLPjjSFWRcHF09OZlBT+8yzX9dWkQJ2J8lpmLYO9X13Ddsj4zQSvTDqB2nv4k3PVav06JlcRYQ6baXzAs/GPxIPCWw7Z/RsnMSAmD+VoL6zZTkQOU+CBveUr5v9anNeobXMgOs7l3SBQFBUAwC5v39z8zJP2STPS6G5Kng97cGxpLYva7laOore/q2/OxTLPB9Yqq8QXfz/yne363KUgp1NTCyFIblLTts2EZeQ52LRSTT95eaemPoDUA6oLfv0DZ8i+8r3nCEVqgrlMuPF4QyhU/SwQTCgSkwQ9lAl0gUQZ11NDcs1FU4dwhWXHqbmKRj4oHIhkg+hvQ2UiDnREdgo7ScavtPaMfEvtDWpkXlxRXkM7B1pH2Um+TfWXJ0SWcI71Au68T4Wp0JBbB5dFKt7bFHTbPzZfQroy5YqgCkTxouihbkZGCUkUUq/0yIpCAUvAJRAXY9BeVxgg+R3rc12rz2o6+X6JXwOJaXXeIpEpCEv+tBwAYqbPINoEQPppazYScqT3O4e+CoP+WVpdVYsHeIQZFv15BrqbqlbhFMW/0nv6m011RpO4+ztaoudWpGidh/vH7hTfKN73Eciq6UTN6CSwbV6YMQxzofUQTwzAqWwoGXx9odd0ukH5fATneLyTQKw9MoT9jypwZQVfioeiB+vC9hU6QyvgR0CsyAo1WyFslmXB72g5rLiuWa5TSBH1t908YAHacBbVH9/MxDEd+bZZ27C2jqc+KARGvdt+XW4eXLZ1ZYR+VzTqY73M/6rkSaCtX6/nfqSq/LncGgLDLRH2g1rgD7L8PkqQmRjFSHdqmwL4G5M91i+5cOoEKR6SRh9kW76cOYuBCHv/qH+ukVz/PkYyiI396DmR7QpXtB1IdS4Kho30FjR5hm5aDa0Ur0Z
Content-Type: multipart/alternative; boundary="_000_DS0PR00MB2884388AB2C45EB390A01C2DD3582DS0PR00MB2884namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DS0PR00MB2884.namprd00.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 09ea894c-00fc-4626-a6aa-08de9669d5a5
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2026 18:57:23.2750 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: t1FEiA8kjuMP9GyaOUA7qmYQMzESdvrbO6xuDwR42ZrEUPspRSD+o4spQUawICToTZgPh2UShSy6Xw2IA6Kptw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR00MB2442
Message-ID-Hash: FSFA4OXLUGS76O6CUXNIUVXANJHTR7OD
X-Message-ID-Hash: FSFA4OXLUGS76O6CUXNIUVXANJHTR7OD
X-MailFrom: wibartle@microsoft.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-dnsop.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "dnsop@ietf.org" <dnsop@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [DNSOP] Re: [EXTERNAL] Re: Advice sought: DNS record type for FedCM well-known file delegation
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/oGjGfsb-Gs6PMhLqKcQlXHpNi2E>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Owner: <mailto:dnsop-owner@ietf.org>
List-Post: <mailto:dnsop@ietf.org>
List-Subscribe: <mailto:dnsop-join@ietf.org>
List-Unsubscribe: <mailto:dnsop-leave@ietf.org>

Hit send to soon... Part of the problem here is that these services often have different reliability and layering characteristics.

In reliability:

  *
DNS is foundational network architecture and has a very high reliability like 99.999.
  *
LOGIN is foundational cloud architecture has a reliability like 99.99.
  *
APEX is just some random maybe-not-very-important site and has a reliability like 99.9.

In cloud layering:

  *
DNS is one of the lowest layers
  *
LOGIN is a low layer
  *
APEX is a high layer.

Middle-layers services (e.g. the deployment infrastructure for the APEX or APP1, which requires the service operators to login) can take a dependency on lower layers of the stack, but cannot take a dependency on higher layers.

The FedCM spec today effectively requires that the HTTP server at the APEX become a low layer in the dependency stack, where today it is usually a high layer.

It's not hard to host a json file, of course. It is hard to move high layers to low layers to maintain the disaster recovery plan's invariant that all layers only depend on layers under them.

Thanks,
Will

________________________________
From: Will Bartlett <wibartle=40microsoft.com@dmarc.ietf.org>
Sent: Thursday, April 9, 2026 11:42 AM
To: Ben Schwartz <bemasc=40meta.com@dmarc.ietf.org>
Cc: dnsop@ietf.org <dnsop@ietf.org>
Subject: [DNSOP] Re: [EXTERNAL] Re: Advice sought: DNS record type for FedCM well-known file delegation

> If I understand correctly, the concern here is that the RP and IDP could collude by using high-entropy IDP subdomains (and a wildcard DNS entry), effectively creating a covert channel between the RP and IDP.  Is that correct?

Yes, that's right. It'd be trivial for an IDP login.idp.example that stores cookies in .login.idp.example to ask that app.example use https://app-example.login.idp.example/fedcm.config or https://login.idp.example/app.example/fedcm.config as its config, pointing to accounts and login endpoints in the same domain subdomain or subpath, and thereby identify app.example before consent.

> I didn't see it mentioned explicitly in the spec.

It's in 7.3.1. Manifest Fingerprinting. https://w3c-fedid.github.io/FedCM/#manifest-fingerprinting

> If installing a redirect is operationally challenging, the indirection can also be encoded in the FedCM JSON response.  Surely publishing a small, stable JSON file is achievable even in very basic static site management tools.

It's not operationally challenging. It's inconsistent with high reliability architectural principles - namely, the principle of minimizing dependencies. There are three core services here - DNS, LOGIN, and APEX - each with their own virtual or physical machines, routing layers, etc. There are any number of apps APP1, APP2, APP3, etc. It'd be preferable if the successful login to APP1 only required DNS and LOGIN to be healthy, and didn't also require APEX to be healthy. If each individual service operates at 99.99% reliability, two service dependencies implies an overall reliability of 99.98% and and three service dependencies implies an overall reliability of 99.97%. If some of the individual services have lower reliability numbers (99.9% or 99%), the math becomes correspondingly worse.

RFC 3439 (Some Internet Architectural Guidelines and Philosophy) discusses the downsides of unnecessary dependencies in section 2.2.2 The Coupling Principle.

Thanks,
Will


________________________________
From: Ben Schwartz <bemasc=40meta.com@dmarc.ietf.org>
Sent: Thursday, April 9, 2026 10:10 AM
To: Will Bartlett <wibartle@microsoft.com>
Cc: dnsop@ietf.org <dnsop@ietf.org>
Subject: [EXTERNAL] Re: [DNSOP] Advice sought: DNS record type for FedCM well-known file delegation

You don't often get email from bemasc=40meta.com@dmarc.ietf.org. Learn why this is important<https://aka.ms/LearnAboutSenderIdentification>
The spec currently requires Identity Providers to host a .well-known/web-identity file at the registrable domain (apex). This requirement is privacy driven - in order to ensure Identity Providers are unaware of Relying Parties until user consent is granted, Identity Providers must not be permitted to use per-Relying Party configuration files.
If I understand correctly, the concern here is that the RP and IDP could collude by using high-entropy IDP subdomains (and a wildcard DNS entry), effectively creating a covert channel between the RP and IDP.  Is that correct?  I didn't see it mentioned explicitly in the spec.

This closely resembles the configuration consistency requirement that we previously discussed in the Privacy Pass working group (not coincidentally, given the related goals): https://datatracker.ietf.org/doc/draft-ietf-privacypass-key-consistency/

In other words, each registrable domain must have a single configuration file. Hosting a file at the apex is operationally problematic when the apex is operated by a different service than the authentication service — a common setup where login.example.com<http://login.example.com/> CNAMEs to a white-label auth provider while the apex serves a marketing site, storefront, etc.
As Matthew Pounsett noted, I believe an HTTP 3XX redirect is the appropriate solution to this problem.  If installing a redirect is operationally challenging, the indirection can also be encoded in the FedCM JSON response.  Surely publishing a small, stable JSON file is achievable even in very basic static site management tools.

We're considering using DNS to let IDPs indicate where the well-known data lives. We have four candidate approaches and would appreciate guidance on which is most appropriate, or if another pattern is appropriate
If HTTP redirection is not sufficient, the first DNS technology I would recommend is the SVCB/HTTPS AliasMode, which allows owners to indirect the apex domain much like a CNAME.  This avoids many of the apex domain limitations of DNS.

--Ben Schwartz