سؤال

هنا هي القضية،

يتصل Realm JAAS بقاعدة البيانات بشكل جيد، واسم المستخدم ومطابقة كلمة المرور، تتم مصادقة الجلسة. ومع ذلك، يبدو أن أيا من الأدوار تدخل في المدير. يعود ISINUSERROLE في تومكات كاذبة لكل دور، ولا يرى أمن Tomcat إما.

هنا تكوين عالم في Server.xml

<Realm  className="org.apache.catalina.realm.JAASRealm"
        appName="TomcatTimedLogin"
        userClassName="com.tagish.auth.TypedPrincipal"
        roleClassNames="org.ovasp.java.jaas.RolePrincipal" />

هنا هو تسجيل الدخول.

TomcatTimedLogin
{
    org.owasp.java.jaas.TomcatTimedLogin required
    useDS=true
    dsJNDI="jdbc/resourceName"
        dbDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
        dbURL="jdbc:sqlserver://server\\DBSERVER;databaseName=DBName"
        dbUser="username"
        dbPassword="password"
        debug=true 
        loginTable="loginTable" 
        clippingLevel="3" 
        interval="10"
        loginQuery="SELECT UserID,Password FROM Users WHERE LogonUserName=? AND RetirementDate is null"
        rolesQuery="SELECT Role.RoleDescription FROM User_Role,Role WHERE User_Role.UserID=? AND User_Role.RoleID=Role.RoleID";
};

وفي catalina.properties أشير إلى التكوين مثل هذا

java.security.auth.login.config=file:///C:/config/login.config

عند بدء تشغيل التطبيق، احصل على الرسالة التالية في إخراج التصحيح، لست متأكدا من السبب في أن جميع الفئات يجب أن تكون متاحة بواسطة الخادم

SEVERE: Class org.ovasp.java.jaas.RolePrincipal not found! Class not added.

سيكون موضع تقدير أي مساعدة. لقد قرأت بالفعل نشر بعد النشر والبرنامج التعليمي بعد البرنامج التعليمي، وأولئك الذين لديهم هذه المشكلة، ليس لديهم حل نشر.

راجع للشغل، أنا أستخدم Tomcat 5.5، وليس خياري، رمز إرث، أنت تعرف كيف هو! أنا أيضا استخدام وحدة تسجيل الدخول owasp (owaspjaasloginmodule.jar). يقع ملف Jar هذا في الدليل الخادم / LIB.

هل كانت مفيدة؟

المحلول

حسنا ... لقد حلها بنفسي ... مرة أخرى، غبي جدا! إذا كان هذا الرمز الخاص بي، فسأكون مجنونا من نفسي، لكنه ليس كذلك، وبعد 4 أيام من الشد مع هذا التطبيق، فأنا قريب من سئمت. كانت المشكلة أن الفصل ليس كذلك

org.ovasp.java.jaas.RolePrincipal

إنه

org.owasp.java.jaas.RolePrincipal

غبي!!!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top