websphere-libertyopen-libertyspnego

Liberty - CWWKS4310W: The client delegated GSSCredentials were expected to be received but were not found for user


I have configured SPNEGO on Open Liberty, but when I perform a SPNEGO login for user1 I recieve the following console message:

[WARNING ] CWWKS4310W: The client delegated GSSCredentials were expected to be received but were not found for user: user1@EXAMPLE.COM

My Liberty server.xml SPNEGO configuration:

<spnego
        servicePrincipalNames="HTTP/liberty1.example.com"
        krb5Config="C:/krb5.ini"
        krb5Keytab="C:/krb5.keytab"
        authFilterRef="myAuthFilter"

I was not expecting to see the warning message. I expected to see the GSS credential for user1 in the subject. For Example: Private Credential: [GSSCredential: user1@EXAMPLE.COM 1.2.840.113554.1.2.2 Initiate

What am I missing?


Solution

  • The client GSSCredentials for user1 were not being sent because the SPN account for the Liberty server was not allowed to delegate the credentials.

    if using Active Directory, this can be fixed with the setting below:
    On the account for HTTP/liberty1.example.com, set "Trust this user for delegation to any service (Kerberos only)"
    Delegation setting for liberty1

    Alternatively, if you want constrained-delegation you can select the specific service SPN that delegation is allowed for.