SecretService

A proxy object representing the Secret Service.

A #SecretService object represents the Secret Service implementation which runs as a D-Bus service.

Normally a single #SecretService object can be shared between multiple callers. The secret.service.Service.get method is used to access this #SecretService object. If a new independent #SecretService object is required, use secret.service.Service.open.

In order to securely transfer secrets to the Sercret Service, a session is established. This session can be established while initializing a #SecretService object by passing the secret.types.ServiceFlags.OpenSession flag to the secret.service.Service.get or secret.service.Service.open functions. In order to establish a session on an already existing #SecretService, use the secret.service.Service.ensureSession function.

To search for items, use the secret.service.Service.search method.

Multiple collections can exist in the Secret Service, each of which contains secret items. In order to instantiate class@Collection objects which represent those collections while initializing a #SecretService then pass the secret.types.ServiceFlags.LoadCollections flag to the secret.service.Service.get or secret.service.Service.open functions. In order to establish a session on an already existing #SecretService, use the secret.service.Service.loadCollections function. To access the list of collections use secret.service.Service.getCollections.

Certain actions on the Secret Service require user prompting to complete, such as creating a collection, or unlocking a collection. When such a prompt is necessary, then a class@Prompt object is created by this library, and passed to the secret.service.Service.prompt method. In this way it is handled automatically.

In order to customize prompt handling, override the vfunc@Service.prompt_async and vfunc@Service.prompt_finish virtual methods of the #SecretService class.

Members

Variables

parent
GDBusProxy parent;
pv
SecretServicePrivate* pv;