AW: Using a Kerberized application outside the Kerberos Realm

Douglas E. Engert deengert at anl.gov
Tue Aug 22 14:57:44 EDT 2006



Florian Frankenberger wrote:
> Thank you, Mike.
> 
> In my case, Alice isn't running in a domain at all.

Do you mean DNS domain or Windows AD domain? Kerberos deals with realms.
A service is in a realm if there exists a principal for the service
in the realm, and the service has a copy of the keytab file with the
shared secret for the principal. A client can then request a service
ticket from the KDC if in knows the principal name of the service.
The service principal in usually of the form <service>/<hostname>@<realm>
but the client and service agree on some other name that can work too.
By convention the service ticket has the FQDN of the host, but that is
really upto the client and server to agree.

But is your service is tied to Active Directory i.e. it is a windows
based service then it is using AD for more then Kerberos authentication.
It using AD for authorization information too.

With Unix there is normally a host/<hostname>@<realm> principal
that represents the machine (usually for login) and this could be referred
to as the machine is in the realm. But there is no requirement that
there be such a principal. You could have you own XYZ/<hostname>@<realm>
principal representing your XYZ service running on that host,
and that is the only Kerberos service running.

Also note that a service could have multiple principals in different realms.
and have these in the same keytab file. It could then accept service
tickets from either realm.

Mike was talking about cross realm, where two realms trust each other,
say AI-AG.US and AI-AG.DE. The user at AI_AG.US can use cross realm to get
a service ticket for service/host at AI-AG.US


> That's why I have to implement the check for authenticity on Alice's side in my own way. 
 > So what about the idea of having the service ticket encrypted with the symmetric key that
 > only the KDC and Alice know?

But that is the definition of a service ticket!

> Doesn't this mean a kind of secure proof of authentcity to Alice if the ticket passed
 > by Bob can be decrypted with the shared secret key? Or is it simply impossible
 > to get a service ticket for a service that doesn't exist in this or any other domain?
> 

Again the use of existing in a domain. Its not clear what you mean.


> 
> -----Ursprungliche Nachricht-----
> Von: Michael B Allen [mailto:mba2000 at ioplex.com]
> Gesendet: Montag, 21. August 2006 20:49
> An: Florian Frankenberger
> Cc: kerberos at mit.edu
> Betreff: Re: Using a Kerberized application outside the Kerberos Realm
> 
> 
> On Mon, 21 Aug 2006 18:40:28 +0200
> "Florian Frankenberger" <ffrankenberger at ai-ag.de> wrote:
> 
> 
>>My problem is that Alice is not in the domain in which the KDC is running.
> To be more precise, the KDC and the service Alice are set up in different 

network environments and thus do not know each other.
>>Is it possible to create a kerberized service that is not part of the 

Kerberos realm? If yes, what do I have to do?
> 
> 
> Alice and Bob have to be in the same realm or in separate realms that
> have a trust established between them. Otherwise the is no basis for
> establishing trust between Alice and Bob. Kerberos is a "thrid party
> authentication system" so there needs to be someone both principals trust.
> 
> 
>>I thought of sharing the symmetric service key between the KDC and Alice. To do so, I tried to create the service Alice with ktpass, give the so created encryption key to Alice and let Alice decrypt the service tickets, that will be delivered by Bobs later.
>>
>>Is this procedure possibly in theory? Does anyone know how to obtain the service ticket by using JAAS? I only managed to get the TGT.
> 
> 
> If Bob requests a ticket for ALICESVC/apps22.ai-ag.de at AI-AG.DE then
> even if Bob is bob at AI-AG.US he should have no problem looking up the
> KDC for AI-AG.DE using DNS and getting a ticket per usual. But a trust
> relationship would be required between AI-AG.DE and AI-AG.US.
> 
> Mike
> 

-- 

  Douglas E. Engert  <DEEngert at anl.gov>
  Argonne National Laboratory
  9700 South Cass Avenue
  Argonne, Illinois  60439
  (630) 252-5444



More information about the Kerberos mailing list