mirror of
https://github.com/go-gitea/gitea.git
synced 2026-10-23 19:47:07 +09:00
Backport #39792 Fixes #39790 Signed-off-by: choksi2212 <choksi2212@users.noreply.github.com> Signed-off-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: Manas Choksi <162600900+choksi2212@users.noreply.github.com> Co-authored-by: choksi2212 <choksi2212@users.noreply.github.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
2 files changed
+10
No files matched your search
@@ -32,6 +32,14 @@ func Init() {
|
|||||||
RPID: setting.AppDomain,
|
RPID: setting.AppDomain,
|
||||||
RPOrigins: []string{appURL},
|
RPOrigins: []string{appURL},
|
||||||
AttestationPreference: protocol.PreferNoAttestation, // Gitea never verifies attestation
|
AttestationPreference: protocol.PreferNoAttestation, // Gitea never verifies attestation
|
||||||
|
// WebKit (Safari on iOS and macOS) returns an unsolicited "appid" client
|
||||||
|
// extension output even when the relying party did not request it. Since the
|
||||||
|
// webauthn library upgrade to v0.18, the default policy fails such ceremonies
|
||||||
|
// ('Client returned the appid extension output which was not requested'), breaking
|
||||||
|
// every passkey and security-key login from Safari on iOS. Ignore unsolicited
|
||||||
|
// extension outputs, the same policy other relying parties adopted for the
|
||||||
|
// same WebKit behavior.
|
||||||
|
ExtensionsUnsolicitedOutputPolicy: protocol.UnsolicitedOutputPolicyIgnore,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import (
|
|||||||
|
|
||||||
"gitea.dev/modules/setting"
|
"gitea.dev/modules/setting"
|
||||||
|
|
||||||
|
"github.com/go-webauthn/webauthn/protocol"
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -22,4 +23,5 @@ func TestInit(t *testing.T) {
|
|||||||
assert.Equal(t, setting.AppDomain, WebAuthn.Config.RPID)
|
assert.Equal(t, setting.AppDomain, WebAuthn.Config.RPID)
|
||||||
assert.Equal(t, setting.AppName, WebAuthn.Config.RPDisplayName)
|
assert.Equal(t, setting.AppName, WebAuthn.Config.RPDisplayName)
|
||||||
assert.Equal(t, rpOrigin, WebAuthn.Config.RPOrigins)
|
assert.Equal(t, rpOrigin, WebAuthn.Config.RPOrigins)
|
||||||
|
assert.Equal(t, protocol.UnsolicitedOutputPolicyIgnore, WebAuthn.Config.ExtensionsUnsolicitedOutputPolicy)
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user