Class: Gio::DBusAuthObserver
- Inherits:
-
Object
- Object
- Gio::DBusAuthObserver
- Defined in:
- (unknown)
Overview
The GDBus::AuthObserver type provides a mechanism for participating in how a GDBus::Server (or a #GDBusConnection) authenticates remote peers. Simply instantiate a GDBus::AuthObserver and connect to the signals you are interested in. Note that new signals may be added in the future
## Controlling Authentication Mechanisms
By default, a GDBus::Server or server-side #GDBusConnection will allow any authentication mechanism to be used. If you only want to allow D-Bus connections with the ‘EXTERNAL` mechanism, which makes use of credentials passing and is the recommended mechanism for modern Unix platforms such as Linux and the BSD family, you would use a signal handler like this:
static gboolean
on_authorize_authenticated_peer (GDBusAuthObserver *observer,
GIOStream *stream,
GCredentials *credentials,
gpointer user_data)
{
gboolean authorized;
authorized = FALSE;
if (credentials != NULL)
{
GCredentials *own_credentials;
own_credentials = g_credentials_new ();
if (g_credentials_is_same_user (credentials, own_credentials, NULL))
authorized = TRUE;
g_object_unref (own_credentials);
}
return authorized;
}
Instance Method Summary collapse
-
#allow_mechanism(mechanism) ⇒ TrueClass
Emits the GDBus::AuthObserver::allow-mechanism signal on observer.
-
#authorize_authenticated_peer(stream, credentials) ⇒ TrueClass
Emits the GDBus::AuthObserver::authorize-authenticated-peer signal on observer.
-
#new ⇒ Gio::DBusAuthObserver
Creates a new GDBus::AuthObserver object.
Instance Method Details
#allow_mechanism(mechanism) ⇒ TrueClass
Emits the GDBus::AuthObserver::allow-mechanism signal on observer.
#authorize_authenticated_peer(stream, credentials) ⇒ TrueClass
Emits the GDBus::AuthObserver::authorize-authenticated-peer signal on observer.
#new ⇒ Gio::DBusAuthObserver
Creates a new GDBus::AuthObserver object.