Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo ich habe ein Problem ich habe einen Linuxserver.

Nun möchte ich das dort angezeigt wird wie lange ein passwort noch gültig ist (bzw das ablaufdatum eigentlich egal was von beidem)

ich habe dazu folgenden Link gefunden:

How to obtain password expiration date by using LDAP ADSI provider

leider ist es in VB bzw VBScript geschrieben -> kann nicht benutzt werden

ich habe Tomcat installiert habe auch schon eine JSP Seite drum herum es fehlt nur noch dieses kleine stück.

Also habe ich gedacht das könnte man in Java machen nun habe ich aber keine AHnung wie ich da anfangen soll um dies zu realisieren, jemand eine Ahnung was man tun könnte?

Das ist schonmal sehr nett!

(ist mein erstes mal das ich mich überhaupt mit LDAP auseinander setze)

Also wenn ich nun mein Beispiel anschaue (es klappt als ausführbare VBSkript datei auf einen windows desktop) wird dort kein passowrt benötigt also muss ich bei

env.put(Context.SECURITY_AUTHENTICATION,"simple");

none eingeben oder?

und die anderen zwei felder darunter kann ich dann weg lassen, habe ich richtig verstanden oder?

gibt es irgendwelche besonders imports? habe nun:

<%@ page import="java.text.DateFormat" %>

<%@ page import="java.text.SimpleDateFormat" %>


<%@ page import="java.net.URL" %>

<%@ page import="java.util.Hashtable" %>


<%@ page import="javax.naming.Context" %>

<%@ page import="javax.naming.NamingEnumeration" %>

<%@ page import="javax.naming.NamingException" %>

<%@ page import="javax.naming.directory.Attribute" %>

<%@ page import="javax.naming.directory.Attributes" %>

<%@ page import="javax.naming.directory.DirContext" %>

<%@ page import="javax.naming.directory.InitialDirContext" %>

<%@ page import="javax.naming.directory.SearchControls" %>

<%@ page import="javax.naming.directory.SearchResult" %>

danke nochmals! :)

Ok ich versuche das allerdings komme ich gar nicht erst soweit das es mir was bringen würde

Problem:

LdapContext ctx = new InitialLdapContext(env,null);

die Zeile


An error occurred at line: 77 in the jsp file: /webtops/standard/webtop/welcome.jsp

LdapContext cannot be resolved to a type

72: env.put(Context.SECURITY_AUTHENTICATION,"simple");

73: env.put(Context.SECURITY_PRINCIPAL,adminName);

74: env.put(Context.SECURITY_CREDENTIALS,adminPassword);

75: env.put("java.naming.ldap.attributes.binary","objectGUID");

76: env.put(Context.PROVIDER_URL,server);

77: LdapContext ctx = new InitialLdapContext(env,null);

78: 



Nun habe ich gedacht schau mal nach hab das hier versucht: <%@ page import="javax.naming.directory.ldap" %> <%@ page import="javax.naming.directory.ldap.LdapContext" %>

An error occurred at line: 31 in the generated java file

Only a type can be imported. javax.naming.directory.ldap resolves to a package


An error occurred at line: 32 in the generated java file

Only a type can be imported. javax.naming.directory.ldap.LdapContext resolves to a package


jetzt habe ich keine Ahnung was ich da machen soll?

hab auch mal das hier angeschaut:

http://forum.fachinformatiker.de/java/72614-ldap-benutzer-kennwort-vergleichen.html

um erstmal rein zukommen jedoch klappt das auch nicht sobald ich zur stelle:

ctx = new InitialDirContext(properties);

komme sagt er "die seite kann nicht angezeigt werden"

Danke nochmals!

Ja ok hab gedacht ich mach das mal in kleinen schritten aber das geht ja anscheinend nicht, nichts destotrotz bleibt der fehler an der stelle:

LdapContext ctx = new InitialLdapContext(env,null);

der andere ist jetzt weg

Ich hab eigentlich gedacht durch den Import sollte das geklärt sein.

Danke.

Hallo nochmal, ich lenke jetzt mal etwas anders ein.

Ich habe gerade eine tip von einem aus der Firma bekommen.

und zwar läuft es darauf hinaus das es eher so aussieht:


DirContext ctx = null;

  String DEFAULT_FACTORY = "com.sun.jndi.ldap.LdapCtxFactory";

  Hashtable env = new Hashtable();

  SearchControls ctls = new SearchControls();

  NamingEnumeration answer = null;

  SearchResult sr;


  env.put( Context.INITIAL_CONTEXT_FACTORY, DEFAULT_FACTORY );

  env.put( Context.SECURITY_AUTHENTICATION, "simple" );

  env.put( Context.PROVIDER_URL, "ldap://server" );

  env.put( Context.SECURITY_PRINCIPAL, "admin" );

  env.put( Context.SECURITY_CREDENTIALS, "pw" );

  ctx = new InitialDirContext(env);

nun wird wie oben schonmal gesagt ab der stelle ctx = new InitialDirContext(env);

die Seite nicht mehr angezeigt jemand eine idee?!

danke (ich werde das jetzt so machen da der Code damit fast fertig ist lediglich kleine anpassungen und halt dieses Problem)

danke!

ok das Problem habe ich jetzt gelöst

viel mehr geht es nun um die abfragen eines MS LDAP (der linux Server greift auf diesen zu da der linux Server als Webserver benutzt wird)

das klappt auch alles soweit

nur ich habe eigentlich keine Ahnung was ich nun hier eintragen soll:

ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);

answer = ctx.search("","",ctls)

und wie ich dann z.B die maxPwdAge ausgeben soll?

wenn ich einfach answer ausgebe bekomme ich:

com.sun.jndi.ldap.LdapSearchEnumeration@1ef2973

ich will nun aber die maxpwdage herausbekommen /(ehe ich dann weiter gehe die lastchange herauszubekommen (mit den beiden kommandos sollte danach ja alles klar sein)

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.