[[!meta title="krb5-auth-dialog GNOME Kerberos Authentication Dialog"]] Krb5-auth-dialog is a tray applet for the [GNOME](http://gnome.org) Desktop that monitors [Kerberos](http://web.mit.edu/kerberos/www/) tickets. [[!toc ]] ## Features * It can alert the user via [notifications](http://www.galago-project.org/specs/notification/) when the ticket is about to expire. * Tickets can be acquired by clicking on the tray icon. * If the notification daemon supports persistence (like in [GNOME 3][2]) the tray icon can be avoided and resident notifications are used. * Current tickets in the credential cache can be listed. * It can be extended using [plugins](http://git.gnome.org/browse/krb5-auth-dialog/tree/plugins/ka-plugin-dummy.c). This can be used to extend krb5-auth-dialog to e.g. handle things like [kx509](https://bugzilla.gnome.org/show_bug.cgi?id=347034). * These plugins are currently available: * afs: a plugin to acquire AFS tickets * dummy: a sample plugin printing to the console * pam: a plugin invoking the pam stack * A [DBus][] API for applications to acquire a Kerberos ticket and to remove the credentials cache is provided. * [DBus][] signals notify applications about acquired, renewed and expired tickets. * It supports PKinit (e.g. via SmartCard) when built against [Heimdal](http://h5l.org). ## Source Code The source code is available and browseable via [GNOMEs GIT](http://git.gnome.org/cgit/krb5-auth-dialog/): git clone git://git.gnome.org/krb5-auth-dialog ## Releases Releases are availale from [download.gnome.org](http://download.gnome.org/sources/krb5-auth-dialog/). The current stable release is [3.8.0](http://download.gnome.org/sources/krb5-auth-dialog/3.8/). ## Debian Packages Debian packges are available from [debian.org](http://packages.debian.org/search?keywords=krb5-auth-dialog). ## Screenshots The tray icon can be seen [here](http://honk.sigxcpu.org/con/krb5_auth_dialog_updates.html) and [here](http://honk.sigxcpu.org/con/krb5_auth_dialog__new_icon.html). Below are pictures of the password and preferences dialogs:
[[!img pwdialog.png size="x150" alt="password dialog"]] [[!img prefs.png size="x150" alt="preferences dialog"]]
The notifications under [GNOME 3][2] look like this:
[[!img notify-valid.png alt="valid ticket notification"]] [[!img notify-expired.png alt="expired ticket notification"]]
## Plugins There are currently three plugins available: * afs - call aklog or afslog to aquire AFS tickets * pam - invoke PAM modules * dummy - example plugin These plugins can be activated using a [key in GSettings][0] ## DBus API * There's a DBus API to acquire Kerberos ticktes. See the [examples][1]. [virt-manager][] is using this and [here](http://honk.sigxcpu.org/unsorted-patches/offlineimap_acquire-tgt.diff)'s a patch for [offlineimap][]. * DBus signals notify about acquired, renewed or expired tickets. This can be used to e.g. run [aklog](http://docs.openafs.org/Reference/1/aklog.html) via this [example](http://git.gnome.org/browse/krb5-auth-dialog/commit/?id=c374a7f8dbe6ef40c65752e3f35635d50d6b9260). ## Todo * Add gnome keyring support ([567701](http://bugzilla.gnome.org/show_bug.cgi?id=567701)) * Remove all wakeups, rely on our gio watch of the ticket cache * Add cache version, etc. to ticket dialog * Add fast principal switching * Make more applications use the DBUS API to make Kerberos a smooth experience on the desktop: * [libsoup](https://bugzilla.gnome.org/show_bug.cgi?id=587145) - used by nautilus and evolution for calendars * [Thunderbird](https://bugzilla.mozilla.org/show_bug.cgi?id=524698) * Evolution IMAP and SMTP * ssh client ### GNOME 3 Readiness * krb5-auth-dialog uses persistent notifications instead of a tray icon * Settings were moved from a stand alone dialog into the gnome-control-center panel ### GNOME Goals Status of current [Gnome goals][] in krb5-auth-dialog: * [Deprecated GLib symbols][] - done * [Deprecated Gtk+ symbols][] - done * [Clean up GLib and GTK+ includes][] - done * [Use GtkBuilder instead of libglade][] - done * [Use a correct Generic Name][] - done * [Use GSeal][] - done * [Migrate to GSettings / dconf][] - done * [Migrate to GDBus][] - done ## Authors krb5-auth-dialog was originally written by Christopher Aillon and is now maintained by Guido Günther <>. ## Bugs Please file bug reports via [GNOME's bugzilla][3]. ## License krb5-auth-dialog is free software and licensed under the GPL Version 2. [DBus]: http://dbus.freedesktop.org/ [offlineimap]: http://software.complete.org/software/projects/show/offlineimap [virt-manager]: http://virt-manager.et.redhat.com/ [Gnome goals]: http://live.gnome.org/GnomeGoals [Deprecated Glib symbols]: http://live.gnome.org/GnomeGoals/RemoveDeprecatedSymbols/Glib [Deprecated Gtk+ symbols]: http://live.gnome.org/GnomeGoals/RemoveDeprecatedSymbols/GTK%2B [Use GtkBuilder instead of libglade]: http://live.gnome.org/GnomeGoals/RemoveLibGladeUseGtkBuilder [Use GSeal]: http://live.gnome.org/GnomeGoals/UseGseal [Clean up GLib and GTK+ includes]: http://live.gnome.org/GnomeGoals/CleanupGTKIncludes [Add GObject Introspection Support]: http://live.gnome.org/GnomeGoals/AddGObjectIntrospectionSupport [Migrate to GSettings / dconf]: http://live.gnome.org/GnomeGoals/GSettingsMigration [Use a correct Generic Name]: http://live.gnome.org/GnomeGoals/CorrectDesktopFiles [Migrate to GDBus]: https://bugzilla.gnome.org/show_bug.cgi?id=622885 [0]: http://git.gnome.org/browse/krb5-auth-dialog/tree/README [1]: http://git.gnome.org/browse/krb5-auth-dialog/tree/examples [2]: http://www.gnome3.org/ [3]: https://bugzilla.gnome.org/buglist.cgi?cmdtype=runnamed&namedcmd=krb5-auth-dialog