<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sssd.git/src/db, branch jhrozek_sysdb_fqdn</title>
<subtitle>Unnamed repository; edit this file to name it for gitweb.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/'/>
<entry>
<title>sudo: solve problems with fully qualified names</title>
<updated>2016-07-06T15:40:23+00:00</updated>
<author>
<name>Pavel Březina</name>
<email>pbrezina@redhat.com</email>
</author>
<published>2016-05-26T09:37:30+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=98a85bf0b2334c45a60c5bc10042e5abdeff3f98'/>
<id>98a85bf0b2334c45a60c5bc10042e5abdeff3f98</id>
<content type='text'>
sudo expects the same name in sudo rule as login name. Therefore
if fully qualified name is used or even enforced by setting
use_fully_qualified_names to true or by forcing default domain
with default_domain_suffix sssd is able to correctly return the
rules but sudo can't match the user with contect of sudoUser
attribute since it is not qualified.

This patch changes the rules on the fly to avoid using names at all.
We do this in two steps:
1. We fetch all rules that match current user name, id or groups and
   replace sudoUser attribute with sudoUser: #uid.
2. We fetch complementry rules that contain netgroups since it is
   expected we don't have infromation about existing netgroups in
   cache, sudo still needs to evaluate it for us if needed.

This patch also remove test for sysdb_get_sudo_filter since it wasn't
sufficient anyway and I did not rewrite it since I don't thing it
is a good thing to have filter tests that depends on exact filter
order.

Resolves:
https://fedorahosted.org/sssd/ticket/2919

Reviewed-by: Jakub Hrozek &lt;jhrozek@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
sudo expects the same name in sudo rule as login name. Therefore
if fully qualified name is used or even enforced by setting
use_fully_qualified_names to true or by forcing default domain
with default_domain_suffix sssd is able to correctly return the
rules but sudo can't match the user with contect of sudoUser
attribute since it is not qualified.

This patch changes the rules on the fly to avoid using names at all.
We do this in two steps:
1. We fetch all rules that match current user name, id or groups and
   replace sudoUser attribute with sudoUser: #uid.
2. We fetch complementry rules that contain netgroups since it is
   expected we don't have infromation about existing netgroups in
   cache, sudo still needs to evaluate it for us if needed.

This patch also remove test for sysdb_get_sudo_filter since it wasn't
sufficient anyway and I did not rewrite it since I don't thing it
is a good thing to have filter tests that depends on exact filter
order.

Resolves:
https://fedorahosted.org/sssd/ticket/2919

Reviewed-by: Jakub Hrozek &lt;jhrozek@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: qualify_attr: create new attribute only once</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Sumit Bose</name>
<email>sbose@redhat.com</email>
</author>
<published>2016-07-05T13:53:39+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=85bb0c2ace68edbf148df6670a86e33f83696f16'/>
<id>85bb0c2ace68edbf148df6670a86e33f83696f16</id>
<content type='text'>
Reviewed-by: Jakub Hrozek &lt;jhrozek@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed-by: Jakub Hrozek &lt;jhrozek@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Upgrade sysdb to use qualified names for users and groups, sudo rules and override objects</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-07-05T10:44:09+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=3612c827757821622daa51ebb9841699b9b07272'/>
<id>3612c827757821622daa51ebb9841699b9b07272</id>
<content type='text'>
Runs a sysdb upgrade that changes objects that represent users, groups,
sudo rules and overrides to the new schema, which uses the fully
qualified names.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Runs a sysdb upgrade that changes objects that represent users, groups,
sudo rules and overrides to the new schema, which uses the fully
qualified names.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Remove the timestamps cache on update</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-29T16:37:02+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=fc69c7e376390b62581966dadf73fd6d451f206c'/>
<id>fc69c7e376390b62581966dadf73fd6d451f206c</id>
<content type='text'>
When the cache is upgraded, we want to avoid upgrading the timestamps
cache, because it was only introduced recently in Beta, so it doesn't
make senes to write complex code to change the format.

This patch rather removes the cache during upgrade, it will be recreated
with later lookups anyway.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the cache is upgraded, we want to avoid upgrading the timestamps
cache, because it was only introduced recently in Beta, so it doesn't
make senes to write complex code to change the format.

This patch rather removes the cache during upgrade, it will be recreated
with later lookups anyway.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Fix small issues during db upgrade</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-29T15:03:51+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=bcbf6855477af41db9bd6bf4d49a04f6c2a64f27'/>
<id>bcbf6855477af41db9bd6bf4d49a04f6c2a64f27</id>
<content type='text'>
This patch fixes several issues introduced during the recent sysdb
upgrade:
    1) The upgrade code often accesses sysdb-&gt;ldb, but at this point,
    the ldb pointer might not be initialized yet. As a kind of an ugly,
    yet functional workaround, we pass in the ldb pointer that we
    received from the caller as part of the sysdb structure.

    2) the version that sysdb_domain_cache_upgrade() returns is not a
    talloc pointer, so the upgrade was crashing when we tried to steal
    it.

    3) the ldb pointer sysdb_cache_connect() returns was kept allocated
    on the tmp_ctx. We need to steal it instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes several issues introduced during the recent sysdb
upgrade:
    1) The upgrade code often accesses sysdb-&gt;ldb, but at this point,
    the ldb pointer might not be initialized yet. As a kind of an ugly,
    yet functional workaround, we pass in the ldb pointer that we
    received from the caller as part of the sysdb structure.

    2) the version that sysdb_domain_cache_upgrade() returns is not a
    talloc pointer, so the upgrade was crashing when we tried to steal
    it.

    3) the ldb pointer sysdb_cache_connect() returns was kept allocated
    on the tmp_ctx. We need to steal it instead.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Allow passing a context to sysdb upgrade functions</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-29T14:30:39+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=190e68d96b287c00be6bd5a4603884e74141bbe7'/>
<id>190e68d96b287c00be6bd5a4603884e74141bbe7</id>
<content type='text'>
We decide on whether to upgrade or not based on a pointer value, not a
boolean. This pointer points to a structure that the upgrade invoker
(typically the monitor) can use to fill auxilary data the sysdb upgrade
has no means of instantiating.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We decide on whether to upgrade or not based on a pointer value, not a
boolean. This pointer points to a structure that the upgrade invoker
(typically the monitor) can use to fill auxilary data the sysdb upgrade
has no means of instantiating.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Remove useless parameter from sysdb_init()</title>
<updated>2016-07-06T15:40:22+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-29T14:18:12+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=dde89d133dfb38351656195bcf024f6df9c76a0d'/>
<id>dde89d133dfb38351656195bcf024f6df9c76a0d</id>
<content type='text'>
The function sysdb_init() is never used to allow upgrade, so the
allow_upgrade parameter was pointless.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The function sysdb_init() is never used to allow upgrade, so the
allow_upgrade parameter was pointless.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Construct internal fqnames, not NSS names in sysdb_add_group_member_overrides</title>
<updated>2016-07-06T15:33:00+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-19T06:35:57+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=f69b128a26fd4d7f72d64d2e5ae26e57c831e43b'/>
<id>f69b128a26fd4d7f72d64d2e5ae26e57c831e43b</id>
<content type='text'>
Because all users and groups are stored the same way in sysdb, we can
avoid parsing and unparsing the name with NSS functions and instead just
grab the name from the FQDN in the cache.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Because all users and groups are stored the same way in sysdb, we can
avoid parsing and unparsing the name with NSS functions and instead just
grab the name from the FQDN in the cache.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: Add a utility function to return a list of qualified names</title>
<updated>2016-07-06T15:32:59+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-04-08T14:29:42+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=99990d4e4d929db39a1fc1d0d65406b677095dba'/>
<id>99990d4e4d929db39a1fc1d0d65406b677095dba</id>
<content type='text'>
Adds a utility function the LDAP provider can use. This is different
from sss_create_internal_fqname_list in the sense that the LDAP provider
passes in the attribute name that contains the name attribute value.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds a utility function the LDAP provider can use. This is different
from sss_create_internal_fqname_list in the sense that the LDAP provider
passes in the attribute name that contains the name attribute value.
</pre>
</div>
</content>
</entry>
<entry>
<title>SYSDB: add_name_and_aliases_for_name_override no longer needs to special case subdomain users</title>
<updated>2016-07-06T15:32:58+00:00</updated>
<author>
<name>Jakub Hrozek</name>
<email>jhrozek@redhat.com</email>
</author>
<published>2016-06-19T05:24:08+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/sbose/public_git/sssd.git/commit/?id=3dbe1b9776c6f8182aeb8947e88d2e517658526e'/>
<id>3dbe1b9776c6f8182aeb8947e88d2e517658526e</id>
<content type='text'>
All user and group names use the same unified format in the cache, so
there's no need to special-case subdomains and create different names
for the main domain and a subdomain.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All user and group names use the same unified format in the cache, so
there's no need to special-case subdomains and create different names
for the main domain and a subdomain.
</pre>
</div>
</content>
</entry>
</feed>
