[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Hallo Niko,

    im Prinzip kannst Du über PHP (bzw. die ODBC-Schnittstelle) ja einen SQL Call durchführen, der wiederum ein Programm oder eine Stored Procedure auf der iSeries aufruft. Ich würde halt auf der iSeries ein kleines Programm (CL oder RPG) schreiben, das dort dann die ganze Steuerung übernimmt. Diesem Programm solltest Du die nötigen Parameter von Deiner PHP-Datei aus mit übergeben.

    Gruß,
    KM

  2. #2
    Registriert seit
    Oct 2005
    Beiträge
    29
    Hallo KM,

    dieser Ansatz gefällt mir bisher ganz gut, nur kenne ich mich mit RPG (bzw. wird das glaub bei uns schon mit Java gemacht) nicht aus. Deshalb warte ich mal noch auf unseren Spezialisiten hier.

    Aber ich habe dazu gleich nochmal ne Frage und zwar werden auf unseren Servern die Benutzer bis jetzt nicht in Active Directorys gespeichert sondern irgendwie anders. Also wenn ich im iSeries Navigator auf Benutzer und Gruppen gehe sehe ich alle, aber auf diese kann ich ja nicht über LDAP zugreifen, kann das sein?
    Ist es möglich dann über einen SQL Call diese direkt ab zu fragen oder muss ich die dann erst in ein Active Directory verpflanzen?

    Mit freundlichen Grüßen

    Niko Will

  3. #3
    Registriert seit
    Oct 2005
    Beiträge
    29
    Hallo KM,

    einer unserer Spezialisten meint das es nicht möglich ist über ODBC ein Benutzernamen und Passwort abzufragen wegen des Sicherheitsmanagments und da die Benutzernamen verschlüsselt gespeichert werden ist es auch nicht möglich per SQL Befehl den eingegebenen Benutzernamen und das Passwort mit der DB der AS400 zu vergleichen.

    Schade, wäre auch zu schön gewesen.

    Gruß

    Niko Will

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Per SQL den Benutzer und das Kennwort abzugleichen geht doch indirekt.
    Wenn eine Verbindung (Connection) zur AS400 aufgebaut wird, muss man sich doch anmelden.
    Schlägt die Anmeldung fehl, stimmen Benutzer und Kennwort nicht.
    In der Verbindung können Benutzer und Kennwort ja vorgegeben werden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Oct 2005
    Beiträge
    29
    Hallo Fuerchau,

    naja gut, das mag schon stimmen, jedoch kann ich die Anmeldung an der AS400 nicht einfach in ein PHP Skript einbinden und dann auch noch Benutzergruppen etc. auslesen. Und ein abgleich über ODBC geht nicht weil die Passwörter verschlüsselt hinterliegen und somit nicht mit einem Passwort im Klartext verglichen werden können.

    Weitere Recherchen haben schon ergeben das LDAP wahrscheinlich die bessere alternative wäre. Nur muss ich das jetzt erst zum laufen kriegen.

    Kennt jemand ein gutes Tutorial oder ähnliches von IBM bzw. das sich mit iSeries beschäftigt? Bei IBM developerWorks bekomm ich immer nur Sachen für Domino usw. mit denen ich nicht viel anfangen kann.

    Weil es wäre ja schonmal was wenn ich die vorhandene Gruppen und Benutzer LDAP konform portieren könnte. Des Weiteren habe ich das Gefühl das es nur ein minimales Problem ist warum die Verbindung zwischen TYPO3 und dem LDAP Server nicht klappt bzw. die Verbindung klappt einwandfrei, nur die Abfrage nicht.

    Mit freundlichen Grüßen

    Niko Will

  6. #6
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Hallo Niko,

    also irgendwie hab ich Dein Problem noch nicht so ganz verstanden. Wenn Dein Benutzer sich im Intranet anmeldet, gibt er doch sicher in irgendwelchen Form-Feldern (HTML bzw. PHP) seinen Benutzernamen und Kennwort ein. Warum bindest Du diese beiden Felder dann nicht auch in die ODBC-Connection ein ? Wenn Benutzer und Kennwort korrekt sind, funktioniert dann die Anmeldung, ansonsten wird sie zurückgewiesen.

    Gruß,
    KM

  7. #7
    Registriert seit
    Oct 2005
    Beiträge
    29
    Hallo KM,

    ja du hast es schon richtig verstanden. Allerdings meinten unsere Spezialisten hier das das nicht funktionieren würde. Denn wenn ich dich richtig verstanden habe dann meinst du einfach über ODBC den Benutzernamen und das Passwort zu vergleichen. Das soll aber anscheinend nicht funktionieren, da du mit ODBC ja nur Datenbankzellen vergleichen kannst und das Passwort wird auf der AS400 verschlüsselt hinterlegt, also kann die Zelle nicht mit einem Klartextpasswort verglichen werden. So sagten es mir zumindest die Profis bei uns...

    Mit freundlichen Grüßen

    Niko Will

  8. #8
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Hallo Niko,

    also bevor wir jetzt völlig aneinander vorbeireden, schicke ich Dir mal ein Beispiel wie ich von einer PHP-Datei über ODBC auf unsere iSeries zugreife und mir Daten raushole. Vielleicht wird dann einiges klarer. Beim odbc_connect musst Du dann einfach nur den Hostnamen, den Benutzer und das Kennwort (im Klartext) mitgeben. Diese Informationen hast Du ja schon durch Deine Intranet-Anmeldung.

    <html>
    <body>
    <?php
    $conn=odbc_connect('HOST','Benutzer','Kennwort');
    if (!$conn)
    {
    exit("Connection Failed: " . $conn);
    } $sql="SELECT * FROM LIB.DATEI where TSARTN like '305%'";
    $rs=odbc_exec($conn,$sql);
    if (!$rs)
    { exit("Error in SQL");
    }
    echo '<table><tr>';
    echo '<th align="left" width=150>Artikelnummer</th>';
    echo '<th align="left" width=300>Produktname</th>';
    echo '<th align="right" width=100>Gesamtbestand</th>';
    echo '<th align="right" width=100>verfügbar</th></tr>';
    while (odbc_fetch_row($rs))
    {$TSARTN=odbc_result($rs,"TSARTN");
    $TSBEZG=odbc_result($rs,"TSBEZG");
    $TSLBST=odbc_result($rs,"TSLBST");
    $TSVBES=odbc_result($rs,"TSVBES");
    echo '<tr><td align="left" width=150>'.$TSARTN.'</td>';
    echo '<td align="left" width=300>'.$TSBEZG.'</td>';
    echo '<td align="right" width=100>'.number_format($TSLBST, 0).'</td>';
    echo '<td align="right" width=100>'.number_format($TSVBES, 0).'</td>';}
    odbc_close($conn);
    echo "</table>";?>
    </body>
    </html>

  9. #9
    Registriert seit
    Apr 2002
    Beiträge
    792
    Zitat Zitat von Wu-mc
    Hallo KM,

    ja du hast es schon richtig verstanden. Allerdings meinten unsere Spezialisten hier das das nicht funktionieren würde. Denn wenn ich dich richtig verstanden habe dann meinst du einfach über ODBC den Benutzernamen und das Passwort zu vergleichen. Das soll aber anscheinend nicht funktionieren, da du mit ODBC ja nur Datenbankzellen vergleichen kannst und das Passwort wird auf der AS400 verschlüsselt hinterlegt, also kann die Zelle nicht mit einem Klartextpasswort verglichen werden. So sagten es mir zumindest die Profis bei uns...

    Mit freundlichen Grüßen

    Niko Will
    Moin,

    ich kenne mich mit PHP zwar nicht aus aber du musst ja nicht selbst auf die "Benutzerdatenbank" zugreifen. Sondern übergibst im Connect den User und das Passwort. Wenn kein Fehler zurück kommt, stimmen die Angaben sonst halt nicht. Wo ist das Problem?

    Gruß

    Sascha

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Sagte ich das nicht bereits ?
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  11. #11
    Registriert seit
    Apr 2002
    Beiträge
    792
    Moin,

    huch hast Recht. Man sollte vielleicht von oben anfangen zu lesen , aber dann verstehe ich das Problem hier wohl nicht.

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Das Problem liegt wohl daran, dass bereits eine Verbindung (nämlich zum Lesen von Daten) mit einem "internen" Profil existiert.
    Aber was hindert ein Programm denn daran eine 2. Verbindung aufzubauen, die dann wieder getrennt wird ?
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. Kein Zugriff von Linux auf AS/400 Freigabe?
    By schatte in forum NEWSboard Linux
    Antworten: 12
    Letzter Beitrag: 29-01-08, 14:02
  2. Kein Zugriff über QNTC auf Win-Share
    By marmart in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 25-09-07, 15:29
  3. Nachricht CPDB053 beim Zugriff auf Windows Freigabe
    By schatte in forum NEWSboard Windows
    Antworten: 7
    Letzter Beitrag: 21-11-06, 11:37
  4. QNTC Zugriff auf CD Laufwerk Fehlerhaft
    By pwrdwnsys in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-11-06, 15:34
  5. Antworten: 3
    Letzter Beitrag: 27-08-06, 17:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •