func (h *Handle) StartAsPamUser() error {
	if _, err := security.UserKeyringID(h.PamUser, true); err != nil {
		log.Printf("Setting up keyrings in PAM: %v", err)
	}
	userPrivs, err := security.UserPrivileges(h.PamUser)
	if err != nil {
		return err
	}
	if h.origPrivs, err = security.ProcessPrivileges(); err != nil {
		return err
	}
	return security.SetProcessPrivileges(userPrivs)
}