1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-10 12:58:35 +03:00

s4:rpc_server/netlogon: fix dcesrv_netr_LogonSamLogon_base_call() for ServerAuthenticateKerberos()

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>

Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Thu Dec 12 15:00:10 UTC 2024 on atb-devel-224
This commit is contained in:
Stefan Metzmacher 2024-11-26 11:13:32 +01:00 committed by Andreas Schneider
parent 5aa79e3263
commit cb27914403
2 changed files with 10 additions and 7 deletions

View File

@ -1,4 +1,2 @@
# This is not implemented yet
^samba.tests.krb5.netlogon.*.NetlogonSchannel.test_ticket_samlogon
# These will be fixed in the next commits
^samba.tests.krb5.netlogon.*.NetlogonSchannel.test_.*_samlogon_.*_authK

View File

@ -1445,10 +1445,6 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base_call(struct dcesrv_netr_LogonSamL
break;
case NDR_NETR_LOGONSAMLOGONEX:
default:
if (auth_type != DCERPC_AUTH_TYPE_SCHANNEL) {
return NT_STATUS_ACCESS_DENIED;
}
nt_status = dcesrv_netr_check_schannel(dce_call,
creds,
auth_type,
@ -1457,6 +1453,13 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base_call(struct dcesrv_netr_LogonSamL
if (!NT_STATUS_IS_OK(nt_status)) {
return nt_status;
}
if (!creds->authenticate_kerberos &&
auth_type != DCERPC_AUTH_TYPE_SCHANNEL)
{
return NT_STATUS_ACCESS_DENIED;
}
break;
}
@ -1598,7 +1601,9 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base_call(struct dcesrv_netr_LogonSamL
case NetlogonGenericInformation:
{
if (creds->negotiate_flags & NETLOGON_NEG_SUPPORTS_AES) {
if (creds->authenticate_kerberos) {
/* OK */
} else if (creds->negotiate_flags & NETLOGON_NEG_SUPPORTS_AES) {
/* OK */
} else if (creds->negotiate_flags & NETLOGON_NEG_ARCFOUR) {
/* OK */