I've tried to dig into it - deep into it.⚠
I've managed to connect to the Database - took me a while.
bash-3.2# psql -h "/Library/Server/Wiki/PostgresSocket" -p 5432 collab collab
psql (9.3.9)
Type "help" for help.
collab=# \d
List of relations
Schema | Name | Type | Owner
--------+-----------------------------+-------+--------
public | adc_device_entity | table | collab
public | adc_team_entity | table | collab
public | blog_entity | table | collab
public | bot_entity | table | collab
public | botgroup_entity | table | collab
public | botrun_entity | table | collab
public | build_agent_registry | table | collab
public | document_entity | table | collab
public | email_notification | table | collab
public | entity | table | collab
public | entity_acls | table | collab
public | entity_acls_defaults | table | collab
public | entity_attrs | table | collab
public | entity_auditlog | table | collab
public | entity_changesets | table | collab
public | entity_comment | table | collab
public | entity_lock | table | collab
public | entity_preview | table | collab
public | entity_private_attrs | table | collab
public | entity_tag | table | collab
public | entity_type | table | collab
public | file_entity | table | collab
public | filedata_entity | table | collab
public | filename_reservation | table | collab
public | global_settings | table | collab
public | groups | table | collab
public | migration_entity | table | collab
public | migration_status | table | collab
public | migrationplaceholder_entity | table | collab
public | page_entity | table | collab
public | preview_queue | table | collab
public | relationship | table | collab
public | savedquery_entity | table | collab
public | scm_commit_entity | table | collab
public | scm_server | table | collab
public | scmrepogroup_entity | table | collab
public | search_index | table | collab
public | search_stat | table | collab
public | session | table | collab
public | subscription | table | collab
public | timeseries | table | collab
public | timeseries_toc | table | collab
public | user_activity | table | collab
public | user_entity | table | collab
public | user_entity_favorites | table | collab
public | user_entity_read_status | table | collab
public | user_entity_unread_status | table | collab
public | user_entity_updates | table | collab
public | user_entity_watched | table | collab
public | user_readall_time | table | collab
public | visible_entity_tag | view | collab
public | wiki_entity | table | collab
public | work_queue | table | collab
public | work_schedule | table | collab
public | work_schedule_recurrence | table | collab
public | work_schedule_status | table | collab
(56 rows)
Of interest are the tables✅
You can do a query on the table entity with
collab=# \x
Expanded display is on.
collab=# SELECT * FROM entity WHERE long_name='defaultscmrepogroupu';
-[ RECORD 1 ]----------+---------------------------------------
uid | 1e69725d-4494-b1a1-10ef-b1a1d6204fd5
tiny_id | defaultscmrepogroupu
entity_type_fk | com.apple.entity.User
short_name | defaultscmrepogroupu
long_name | defaultscmrepogroupu
description |
create_time | 2013-10-28 22:07:32.120515
update_time | 2013-10-28 22:07:32.120515
revision | 1
createdby_user_fk | 1e69725d-4494-b1a1-10ef-b1a1d6204fd5
updatedby_user_fk | 1e69725d-4494-b1a1-10ef-b1a1d6204fd5
ownedby_uid_fk |
owner_entity_type_fk |
avatar_uid_fk |
is_deleted | f
is_perm_deleted | f
is_hidden | t
is_blog_enabled | f
is_deleted_with_parent | f
parent_uids | {1e69725d-4494-b1a1-10ef-b1a1d6204fd5}
theme_info |
blog_uid_fk |
container_uid_fk |
Do the query on the table again but now
SELECT * FROM entity WHERE entity_type_fk='com.apple.entity.User';
and focus on the is_hidden value! Compare between the records -> print the list and place the next to each other. It takes a while but it's worth it.
I've altered (through an UPDATE-command) the users
- defaultscmrepogroupu
- servermgr_xcode
- default bot group user
so that the is_hidden is set to t (t for true).
BAD NEWS - it doesn't work! They still show on the peoples page 😢
However, it works for any other user that is not a System-User i.e. is either as user on the server or via Open Directory 😕
Has anyone an idea?!
Table user_entity
You can verify through this table if UIDs i.e. any numbers match. In this table you can verify if for example login_name and UID coming from Directory-Service (of any kind) do match