#2684 D-Bus interface for InfoPipe.GetUserAttr returns base64 encoded values for octetString attributes
Closed: wontfix 4 years ago by pbrezina. Opened 8 years ago by jhrozek.

Ticket was cloned from Red Hat Bugzilla (product Red Hat Enterprise Linux 7): Bug 1232425

Description of problem:
Values obtained using D-Bus call org.freedesktop.sssd.infopipe.GetUserAttr()
are base64 encoded if the attribute in LDAP has octetString syntax.

Version-Release number of selected component (if applicable):
sssd-dbus-1.12.2-58.el7_1.6.x86_64

How reproducible:
100 %

Steps to Reproduce:
0. Add LDAP schema with an octetString attribute:
E.g. ( 2.16.840.1.113730.3.8.11.31 NAME 'ipaSshPubKey' DESC 'SSH public key'
EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 X-ORIGIN ( 'IPA
v3' 'user defined' ) )


1. Configure IFP to return a attribute which has syntax octetString.
/etc/sssd/sssd.conf:
[domain/redhat.com]
ldap_user_extra_attrs = mail, givenname, sn, ipaSshPubKey

[ifp]
allowed_uids = root
user_attributes = +mail, +givenname, +sn, +ipaSshPubKey

2. Populate the attributes with some data.

3. Request values of the attribute with octetString syntax over D-Bus:
#!/bin/python
import dbus

def get_keys_from_server(username):
    bus = dbus.SystemBus()
    infopipe_obj = bus.get_object("org.freedesktop.sssd.infopipe",
"/org/freedesktop/sssd/infopipe")

    ifp = dbus.Interface(infopipe_obj,
dbus_interface='org.freedesktop.sssd.infopipe')
    result = ifp.GetUserAttr(username, ["ipaSshPubKey"])
    ssh_keys = []
    if result:
        for sshpubkey in result["ipaSshPubKey"]:
            print(sshpubkey)

Actual results:
The returned value is base64 encoded.

Expected results:
Raw value is returned.

Fields changed

blockedby: =>
blocking: =>
changelog: =>
coverity: =>
design: =>
design_review: => 0
feature_milestone: =>
fedora_test_page: =>
mark: no => 0
milestone: NEEDS_TRIAGE => SSSD 1.14 beta
review: True => 0
selected: =>
testsupdated: => 0

We didn't have the time to work on this feature in 1.14..

milestone: SSSD 1.14 beta => SSSD 1.14 backlog

Since the 1.14 branch is transitioning into maintenance mode and new functionality is being developed in master which will become 1.15 eventually, I'm mass-moving tickets from the 1.14 backlog milestone to the "Future releases" milestone.

milestone: SSSD 1.14 backlog => SSSD Future releases (no date set yet)

Metadata Update from @jhrozek:
- Issue set to the milestone: SSSD Future releases (no date set yet)

7 years ago

Metadata Update from @thalman:
- Custom field design_review reset (from 0)
- Custom field mark reset (from 0)
- Custom field patch reset (from 0)
- Custom field review reset (from 0)
- Custom field sensitive reset (from 0)
- Custom field testsupdated reset (from 0)
- Issue close_status updated to: None
- Issue tagged with: Canditate to close

4 years ago

Thank you for taking time to submit this request for SSSD. Unfortunately this issue was not given priority and the team lacks the capacity to work on it at this time.

Given that we are unable to fulfill this request I am closing the issue as wontfix.

If the issue still persist on recent SSSD you can request re-consideration of this decision by reopening this issue. Please provide additional technical details about its importance to you.

Thank you for understanding.

Metadata Update from @pbrezina:
- Issue close_status updated to: wontfix
- Issue status updated to: Closed (was: Open)

4 years ago

SSSD is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in SSSD's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/SSSD/sssd/issues/3725

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Login to comment on this ticket.

Metadata