abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:11 | Nová verze

    OCCT3D (Open CASCADE Technology) Open Source 8.0 bylo vydáno. OCCT3D (Wikipedie, GitHub) je objektově orientovaná knihovna pro 3D CAD, CAM nebo CAE. Používá se například v softwarech FreeCAD a KiCad.

    Ladislav Hagara | Komentářů: 2
    dnes 02:22 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a již opravena 21letá zranitelnost CVE-2026-42511 v dhclient. Jedná se o vzdálené spuštění kódu (RCE). Útočník mající pod správou DHCP server může získat plnou kontrolu nad systémem FreeBSD pouze jeho připojením k místní síti.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.3. Současně oznámila, že nadcházející větší vydání 24.04-2.0 bude mít modernější webový prohlížeč.

    Ladislav Hagara | Komentářů: 0
    8.5. 17:11 | Zajímavý projekt

    Ploopy po DIY trackballech či sluchátkách představuje nový externí DIY trackpoint se čtyřmi tlačítky Bean. Obsahuje snímač Texas Instruments TMAG5273, spínače Omron D2LS-21 a řadič RP2040, používá firmware QMK. Schémata jsou na GitHubu; sadu lze předobjednat za 69 kanadských dolarů (bez dopravy a DPH).

    |🇵🇸 | Komentářů: 0
    8.5. 03:33 | Zajímavý článek

    Mozilla před dvěma týdny na svém blogu oznámila, že díky Claude Mythos Preview bylo ve Firefoxu nalezeno a opraveno 271 bezpečnostních chyb. Včera vyšel na Mozilla Hacks článek s podrobnějšími informacemi. Z 271 bezpečnostních chyb mělo 180 chyb vysokou závažnost, 80 chyb střední závažnost a 11 chyb nízkou závažnost. Celkově bylo v dubnu ve Firefoxu opraveno 423 bezpečnostních chyb. Čísla CVE nemusí být přiřazována jednotlivým chybám. CVE-2026-6784 například představuje 154 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    7.5. 22:55 | Bezpečnostní upozornění

    Před týdnem zranitelnost Copy Fail. Dnes zranitelnost Dirty Frag. Běžný uživatel může na Linuxu získat práva roota (lokální eskalaci práv). Na většině linuxových distribucí vydaných od roku 2017. Aktuálně bez oficiální záplaty a CVE čísla [oss-security mailing list].

    Ladislav Hagara | Komentářů: 9
    7.5. 14:00 | Humor

    Ačkoli je papež Lev XIV. hlavou katolické církve a stojí v čele více než miliardy věřících po celém světě, také on někdy řeší všední potíže. A kdo v životě neměl problémy se zákaznickou linkou? Krátce poté, co nastoupil do úřadu, musel papež se svou bankou řešit změnu údajů. Operátorka ale nechtěla uvěřit, s kým mluví, a Svatému otci zavěsila.

    Ladislav Hagara | Komentářů: 11
    7.5. 05:11 | Nová verze

    Incus, komunitní fork nástroje pro správu kontejnerů LXD, byl vydán ve verzi 7.0 LTS (YouTube). Stejně tak související LXC a LXCFS.

    Ladislav Hagara | Komentářů: 0
    7.5. 05:00 | Nová verze

    Google Chrome 148 byl prohlášen za stabilní. Nejnovější stabilní verze 148.0.7778.96 přináší řadu novinek z hlediska uživatelů i vývojářů. Vypíchnout lze Prompt API (demo) pro přímý přístup k AI v zařízení. Podrobný přehled v poznámkách k vydání. Opraveno bylo 127 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (25%)
    Celkem 1570 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: OpenLDAP ACL vs PHP ldap_search()

    20.5.2015 14:59 Marián
    OpenLDAP ACL vs PHP ldap_search()
    Přečteno: 378×
    Mám problém, že PHPčkovská funkcia ldap_search() mi nevráti žiaden záznam, ale konzolový príkaz ldapsearch volaný s tými istými parametrami mi očakávaný výsledok vráti.

    Konzolový príkaz (má vrátiť obsah parametra URL pre záznam s uID = 1011223):
    ldapsearch -H ldaps://localhost:636 -x -D "uid=webuser,ou=people,dc=domain,dc=tld" -W -b "ou=users,dc=domain,dc=tld" "(uID=1011223)" "URL"
    
    PHP funkcia:
    ldap_bind($ldap_conn, 'uid=webuser,ou=people,dc=domain,dc=tld', 'heslo')
    
    $ldap_dn        = 'ou=users,dc=domain,dc=tld';
    $ldap_filter    = "(uID=$uid)";
    $ldap_attr      = array('URL');
    
    $ldap_search_result     = ldap_search($ldap_conn, $ldap_dn, $ldap_filter, $ldap_attr);
    
    skončí chybovou hláškou PHP Warning: ldap_search(): Search: No such object.

    Pri debugovaní na strane servera som zistil, že PHP ldap_search() sa snaží ísť o úroveň vyššie (dc=domain,dc=tld) a neviem prečo.

    Debug konzolového príkazu ldapsearch:
    conn=1007 op=1 SRCH base="ou=users,dc=domain,dc=tld" scope=2 deref=0 filter="(uid=1011223)"
    conn=1007 op=1 SRCH attr=url
    => access_allowed: search access to "ou=users,dc=domain,dc=tld" "entry" requested
    => dn: [1] ou=users,dc=domain,dc=tld
    => acl_get: [1] matched
    => acl_get: [1] attr entry
    => acl_mask: access to entry "ou=users,dc=domain,dc=tld", attr "entry" requested
    => acl_mask: to all values by "uid=webuser,ou=people,dc=domain,dc=tld", (=0)
    <= check a_dn_pat: uid=webuser,ou=people,dc=domain,dc=tld
    <= acl_mask: [1] applying read(=rscxd) (stop)
    <= acl_mask: [1] mask: read(=rscxd)
    => slap_access_allowed: search access granted by read(=rscxd)
    => access_allowed: search access granted by read(=rscxd)
    
    Debug PHP funkcie ldap_search():
    conn=1011 op=1 SRCH base="ou=users,dc=domain,dc=tld" scope=2 deref=0 filter="(uid=1011223)"
    conn=1011 op=1 SRCH attr=url
    => access_allowed: disclose access to "dc=domain,dc=tld" "entry" requested
    => dn: [1] ou=users,dc=domain,dc=tld
    => acl_get: [3] attr entry
    => acl_mask: access to entry "dc=domain,dc=tld", attr "entry" requested
    => acl_mask: to all values by "uid=webuser,ou=people,dc=domain,dc=tld", (=0)
    <= check a_dn_pat: cn=manager,dc=domain,dc=tld
    <= acl_mask: no more who clauses, returning =0 (stop)
    => slap_access_allowed: disclose access denied by =0
    => access_allowed: no more rules
    
    Skúšal som pridať oprávnenie disclose a dokonca read pre dc=domain,dc=tld. Výsledok bol, že som už nemal "access denied", ale nemal som ani očakávaný výsledok. Chyba v PHP bola stále tá istá (ldap_search(): Search: No such object).

    LDAP používateľ webuser má nastavené oprávnenie, že vie čítať iba dva atribúty uID a URL a to len zo stromu "ou=users,dc=domain,dc=tld".

    Defaultné ACL "access to * by users read" mám zakázané, lebo takto vedel webuser čítať aj iné atribúty. A možno tu je kameň úrazu. Podľa dokumentácie k OpenLDAP-u sa ACL spracúvajú v poradí ako sú napísané a ich spracovávanie končí pri prvej zhode (ak sa nepoužije break). ACL pre webuser-a bol ako prvý a "access to * by users read" ako posledný, ale aj tak vedel webuser vyčítavať atribúty, ktoré nemal. V prípade, že je aktívny "access to * by users read", tak to nemá nijaký vplyv na výsledok ldap_search(), v debug logoch síce nemám "access denied", ale nemám ani výsledok. Neviem ako si mám vysvetlovať slovo "stop" v logoch (napr.: acl_mask: [2] applying read(=rscxd) (stop)), či to znamená chybu alebo niečo iné.

    ACL z konfiguráku OpenLDAP-u:
    access to dn.subtree="ou=users,dc=domain,dc=tld" attrs=uID,URL
         by dn.exact="uid=webuser,ou=people,dc=domain,dc=tld" read
         by * none
    
    access to attrs=userPassword
        by anonymous auth
        by * none
    
    access to *
        by dn.exact="cn=Manager,dc=domain,dc=tld" write
    #   by users read
        by * none
    
    Skúšal som aj ldap_read() a ldap_list(), ktoré sa líšia v scope. V oboch prípadoch (ldapsearch a ldap_search()) je bind úspešný, takže tam nie je problém.

    Ešte skúsim novšiu verziu PHP (mám 5.3.3-7+squeeze26) napriek tomu privítam rady.

    Odpovědi

    20.5.2015 15:29 NN
    Rozbalit Rozbalit vše Re: OpenLDAP ACL vs PHP ldap_search()
    Kde se tam vezme to cn=manager?
    21.5.2015 07:34 Marián
    Rozbalit Rozbalit vše Re: OpenLDAP ACL vs PHP ldap_search()
    To je tam zo strany servera. Ja tom nemám v svojom kóde. Spravil som test a doplnil vymysleného používateľa "zzz" do ACL:
    access to *
        by dn.exact="cn=Manager,dc=domain,dc=tld" write
        by dn.exact="cn=zzz,dc=domain,dc=tld" read
        by users read
        by * none
    
    a objavilo sa to v debug logoch:
    May 21 07:28:03 localhost slapd[11218]: <= check a_dn_pat: cn=manager,dc=domain,dc=tld
    May 21 07:28:03 localhost slapd[11218]: <= check a_dn_pat: cn=zzz,dc=domain,dc=tld
    May 21 07:28:03 localhost slapd[11218]: <= check a_dn_pat: users
    
    Inak, skúšal som PHP 5.6.9 na Windows s rovnakým neúspešným výsledkom.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.