SignonIdentityInfo

SignonIdentityInfo — Extra data for a SignonIdentity.

Functions

Types and Values

Object Hierarchy

    GBoxed
    ╰── SignonIdentityInfo
    GFlags
    ╰── SignonIdentityType

Description

Extra data retreived from a SignonIdentity.

Functions

signon_identity_info_new ()

SignonIdentityInfo *
signon_identity_info_new ();

Creates a new SignonIdentityInfo item.

Returns

a new SignonIdentityInfo item.


signon_identity_info_copy ()

SignonIdentityInfo *
signon_identity_info_copy (const SignonIdentityInfo *other);

Get a newly-allocated copy of info .

Parameters

other

the SignonIdentityInfo.

 

Returns

a copy of the given SignonIdentityInfo, or NULL on failure.


signon_identity_info_free ()

void
signon_identity_info_free (SignonIdentityInfo *info);

Destroys the given SignonIdentityInfo item.

Parameters

info

the SignonIdentityInfo.

 

signon_identity_info_add_access_control ()

void
signon_identity_info_add_access_control
                               (SignonIdentityInfo *info,
                                const gchar *system_context,
                                const gchar *application_context);

Add an ACL to this identity. This is an helper function.

Parameters

info

the SignonIdentityInfo.

 

system_context

the system context to add.

 

application_context

the application context to add.

 

signon_identity_info_get_access_control_list ()

GList *
signon_identity_info_get_access_control_list
                               (const SignonIdentityInfo *info);

Get an array of ACL statements of the identity.

Parameters

info

the SignonIdentityInfo.

 

Returns

a GList of SignonSecurityContext representing ACL statements. Each element should be freed with signon_security_context_copy() after use.

[transfer full][element-type SignonSecurityContext]


signon_identity_info_get_caption ()

const gchar *
signon_identity_info_get_caption (const SignonIdentityInfo *info);

Get the display name of info .

Parameters

info

the SignonIdentityInfo.

 

Returns

the display name for the identity.


signon_identity_info_get_id ()

gint
signon_identity_info_get_id (const SignonIdentityInfo *info);

Get the numeric ID of info .

Parameters

info

the SignonIdentityInfo.

 

Returns

the numeric ID of the identity.


signon_identity_info_get_identity_type ()

SignonIdentityType
signon_identity_info_get_identity_type
                               (const SignonIdentityInfo *info);

Get the type of the identity.

Parameters

info

the SignonIdentityInfo.

 

Returns

the type of the identity.


signon_identity_info_get_methods ()

const GHashTable *
signon_identity_info_get_methods (const SignonIdentityInfo *info);

Get a hash table of the methods and mechanisms of info .

Parameters

info

the SignonIdentityInfo.

 

Returns

the table of allowed methods and mechanisms.

[transfer none][element-type utf8 GStrv]


signon_identity_info_get_realms ()

const gchar * const *
signon_identity_info_get_realms (const SignonIdentityInfo *info);

Get an array of the realms of info .

Parameters

info

the SignonIdentityInfo.

 

Returns

a NULL terminated array of realms.

[transfer none]


signon_identity_info_get_storing_secret ()

gboolean
signon_identity_info_get_storing_secret
                               (const SignonIdentityInfo *info);

Get whether the secret of info should be stored.

Parameters

info

the SignonIdentityInfo.

 

Returns

TRUE if Signon must store the secret, FALSE otherwise.


signon_identity_info_get_username ()

const gchar *
signon_identity_info_get_username (const SignonIdentityInfo *info);

Get the username of info .

Parameters

info

the SignonIdentityInfo.

 

Returns

the username, or NULL.


signon_identity_info_remove_method ()

void
signon_identity_info_remove_method (SignonIdentityInfo *info,
                                    const gchar *method);

Remove method from the list of allowed authentication methods. If all methods are removed, then all methods are allowed.

Parameters

info

the SignonIdentityInfo.

 

method

an authentication method.

 

signon_identity_info_set_access_control_list ()

void
signon_identity_info_set_access_control_list
                               (SignonIdentityInfo *info,
                                GList *access_control_list);

Specifies the ACL for this identity. The actual meaning of the ACL depends on the security framework used by signond.

Parameters

info

the SignonIdentityInfo.

 

access_control_list

a GList of SignonSecurityContext representing ACL security domains.

[element-type SignonSecurityContext]

signon_identity_info_set_caption ()

void
signon_identity_info_set_caption (SignonIdentityInfo *info,
                                  const gchar *caption);

Sets the caption (display name) for the identity.

Parameters

info

the SignonIdentityInfo.

 

caption

the caption.

 

signon_identity_info_set_identity_type ()

void
signon_identity_info_set_identity_type
                               (SignonIdentityInfo *info,
                                SignonIdentityType type);

Specifies the type of this identity.

Parameters

info

the SignonIdentityInfo.

 

type

the type of the identity.

 

signon_identity_info_set_method ()

void
signon_identity_info_set_method (SignonIdentityInfo *info,
                                 const gchar *method,
                                 const gchar * const *mechanisms);

Adds a method to the list of allowed methods. If this method is not called even once, then all methods are allowed. Mechanisms are method-specific variants of authentication.

Parameters

info

the SignonIdentityInfo.

 

method

an authentication method.

 

mechanisms

a NULL-termianted list of mechanisms.

[array zero-terminated=1]

signon_identity_info_set_realms ()

void
signon_identity_info_set_realms (SignonIdentityInfo *info,
                                 const gchar * const *realms);

Specify what realms this identity can be used in.

Parameters

info

the SignonIdentityInfo.

 

realms

a NULL-terminated list of realms.

[array zero-terminated=1]

signon_identity_info_set_secret ()

void
signon_identity_info_set_secret (SignonIdentityInfo *info,
                                 const gchar *secret,
                                 gboolean store_secret);

Sets the secret (password) for the identity, and whether the signon daemon should remember it.

Parameters

info

the SignonIdentityInfo.

 

secret

the secret.

 

store_secret

whether signond should store the secret in its DB.

 

signon_identity_info_set_username ()

void
signon_identity_info_set_username (SignonIdentityInfo *info,
                                   const gchar *username);

Sets the username for the identity.

Parameters

info

the SignonIdentityInfo.

 

username

the username.

 

Types and Values

SignonIdentityInfo

typedef struct _SignonIdentityInfo SignonIdentityInfo;

Opaque struct. Use the accessor functions below.


enum SignonIdentityType

Types used in SignonIdentityInfo.

Members

SIGNON_IDENTITY_TYPE_OTHER

an identity that is not an app, web or network

 

SIGNON_IDENTITY_TYPE_APP

an application identity

 

SIGNON_IDENTITY_TYPE_WEB

a web identity

 

SIGNON_IDENTITY_TYPE_NETWORK

a network server identity