Inactive [ADMN/GEN] Whitelist v2.7 [1337]

Discussion in 'Inactive/Unsupported Plugins' started by Silence, Jan 15, 2011.

     
  1. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Whitelist
    Version: v2.7

    This plugin allows only people on your whitelist to join the server.

    Features:
    • Simple and easy to use
    • Whitelist is automatically reloaded when changed outsite of minecraft (e.g. with a texteditor)
    • Whitelist supports console commands
    • SQL support
    • Support for every SQL database, that has a JDBC implementation available
    • User-defined table and database layouts supported
    Download Whitelist
    Source Code
    Donate

    Changelog:
    Version 2.7
    • Fixed SQL injections with malformed player names (thanks to Uroz for reporting!)
    Version 2.6
    • Fixed null ptr exception introduced with 2.5
    Version 2.5
    • (Possible) fix for some SQL related errors
    Version 2.4
    • Improved SQL connector handling with new settings directive
    Version 2.3
    • Fixed an unhandled exception (thx to Puremin0rez for reporting!)
    Version 2.2
    • Removed TSLPC
    • Support for build #415
    Version 2.1
    • Add/Remove commands are working in SQL mode now
    Version 2.0
    • Added SQL support
    • Minor fixes
    Version 1.9
    • Support for build #287
    Version 1.8
    • Fixed fix for non working permissions.
    Version 1.7
    • Fixed non working permissions (thanks to Kainzo for reporting!)
    Version 1.6
    • Support for Bukkit #186 (also confirmed to work with #230)
    Version 1.5
    • Fixed a null pointer error.
    Roadmap:
    • Add permissions, once implemented in Bukkit
    Installation / configuration:
    Copy Whitelist.jar in your plugins folder and start your server. The plugin will create new configuration files in plugins\whitelist.
    In plugins\whitelist.properties you can set the following options:
    • kick-message - The message that will be displayed, when a player is kicked from the server because he is not on the whitelist
    • disable-list-command - Disables the /whitelist list command.
    • whitelist-admins - A comma separated list of players, who are allowed to modify the whitelist ingame.
    Commands:
    These commands can be used by Ops ingame or in the server console. When used with the server console don't type '/' before the command.
    • /whitelist help - Shows the help ;-)
    • /whitelist reload - Reloads the whitelist and it's settings
    • /whitelist add [playername] - Adds a player to the whitelist)
    • /whitelist remove [playername] - Removes a player from the whitelist)
    • /whitelist on|off - Activates/deactivates the whitelist
    • /whitelist list - Lists all whitelisted players
    SQL configuration:
    To support as many different database configurations as possible, Whitelist sets flexibility over simplicity.
    This way virtually every existing database can be used as a base for authentification.

    For the following example I will assume you are using a MySQL Database with the following configuration:
    • Username: root
    • Passwort: fun
    • Database name: Bukkit
    • Table name: tbl_names with one column named "name"
    Because we are using MySQL, we need the MySQL Connector/J. It can be found here.

    Now that we have the connector up and running, it is time to configure Whitelist. This is done in plugins\whitelist.properties.
    1) Activate SQL mode
    sql-enable=true
    2) Set the correct JDBC driver. Because we are using MySQL in our example we choose:
    sql-driver=com.mysql.jdbc.Driver
    3) Set the connection string. It depends on the database system and layout used.
    In our example it is jdbc:mysql://localhost/Bukkit?user=root&password=fun.
    Because we have to escape some characters in *.propertie files, we add:
    sql-driver-connection=jdbc\:mysql\://localhost/Bukkit?user\=root&password\=fun
    4)We have to specify a query, that will be executed on the given database. If the query's result has at least one element, the user is allowed to access the server. There is a placeholder that will be replaced with the name of the person that is trying to join: <%USERNAME%>.
    We add:
    sql-query=SELECT name FROM tbl_names WHERE name\='<%USERNAME%>'
    5)Optional: If /whitelist add should be available in SQL mode, we have to specify a query for it:
    sql-query-add=INSERT INTO tbl_users (Id, Name, Waa, Naaa) VALUES (NULL, '<%USERNAME%>', '1', '2')
    6)Optional: If /whitelist remove should be available in SQL mode, we have to specify a query for it:
    sql-query-remove=DELETE FROM tbl_users WHERE Name\='<%USERNAME%>'

    Help, I get a 'class not found error'
    Put the following line in your whitelist.properties file: sql-driver-jar={path to the connector}
    The base path is the directory your craftbukkit.jar is placed in, so if you have named the connector "mysql-connector.jar" and placed it in the same directory as craftbukkit.jar you would add
    sql-driver-jar=mysql-connector.jar

    I need more informations!
    There is a very nice written guide by MrDylan (thx!) on using Whitelist and MySQL with SMF boards, get it here.
    Thats all!
    Grovert11, MaMaxGER, DannyDog and 2 others like this.
  2.  
  3. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Next version will watch for filesystem changes and reload when whitelist.txt was changed (can be disabled in settings). So it will only reload the list, when it was changed.

    Also I plan soon to implement optional database support, which extremly flexible: You tell the plugin in the setting how to read the DB (SQL statements).
    This way you can use an already existing DB without the need to modify it.
  4. Offline

    uncovery

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Great, thanks!
  5. Offline

    Pencil

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Just to get this right, I HAVE TO reload the whitelist whenever i add a player? Or does it auto update with ingame commands? It's not very clear in your first post.
  6. Online

    TfT_02

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Works great! :)
  7. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    When adding them ingame with the commands, you don't have to reload the list.
    However, when you modify the list outside the server you want to /whitelist reload it. This will be automated in near future
  8. Offline

    dag10

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Awesome.

    If you finish the automatic whitelist reloading before you've finished the DB, is there any chance you could also upload the update at that point?
  9. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Yeah, there will be multiple releases, because I'm short on time:
    1) Make it work with latest builds
    2) Automatic reloading
    3) DB
  10. Offline

    dag10

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Is there an ETA on the Automatic reloading?

    Please don't feel rushed, I'm just trying to gauge if I should write my own temporary auto-reloading white list in the meantime. :)
  11. Offline

    Pencil

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thats kind of weird :/ I add them via the command and they still can't join, i reload and it's fine :S
  12. Offline

    mr_flea

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Please, please, please fix the health bug.
  13. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    On it right now :)

    Edit:
    @dag10: Auto-reload will come tomorrow because it has to be kind of performant :)

    Released 1.3 (fixed health bug), also released the source.
  14. Offline

    Plague

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Nice plugin Silence, thanks!
  15. Offline

    mr_flea

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thanks!
  16. Offline

    maxsteele

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I would love to have the latest version of Whitelist, but one detail that prevents me from updating is not knowing if this will work with the version of CraftBukkit I have.

    Because versions of Craftbukkit come out at any time, is there a way of letting us know which build# of Craftbukkit your newest version is compatible with?

    It may be impossible for you to say what previous versions it would work with, but saying on the first post "Whitelist v1.3 - works with Build# 83 of Craftbukkit" would go a long way in determining what builds it will work with.

    EDIT:

    And now I see that you state that on the linked page where the plugin is available. Never mind!
  17. Offline

    Euthyphro

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    This would make things 100x better :)
  18. Offline

    M3t

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)

    I found this to be quite helpful. I downloaded the latest bukkit from there, and whitelist and sethome now work perfectly, which is all I need for my vanilla server. Thank you! Donated $19 :)
  19. Offline

    Kartus

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Does Whitelist use any AUTH from Original Client or Minecraft.net Masterserver (masterserver has problems, servermigrating)? Is that probably the reason that i can join my unprotected server only with cracked client but not with Original Client? I receive message with Original Client: "You're not on Whitelist!" With cracked client it works. I have admin permissions. All other users with default permissions can join my server with their original clients.

    I have Whitelist, Groupusers 1.4.0, General 1.5, bukkit 83, SimpleHome
  20. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Whitelist does not auth users, MC does. All it does ist allow them to join or not.
    The problem is mc.net -> every online server has problems as long as Mojang is playing around.

    @M3t: Wow, thats a big cup of coffee, thaanks :O
  21. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I've updated whitelist to 1.4:
    When whitelist.txt is changed outsite the game (per hand, with a script, ...) Whitelist will schedule it for reloading. It is then reloaded when a new player joins.
  22. Offline

    StyphaX

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Hi, one member on my server have a problem with the whitelist.
    The plugin says that he is not on the whitelist, but he is !

    His nickname : foone_el_rey

    Is there a problem with the underscore? "_"

    Thanks !
  23. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Not that I know of, it should work.
    Is he playing in offline mode? Because then his name is "player".
  24. Offline

    weirdbeard

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I tried offline mode and whitelist works fine under build 106. It recognizes real account names even though it cannot validate them. Maybe all NEW players would show up with player name= Player??

    Just FYI. :)
    -WB
  25. Offline

    lawina

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Is it possible (and easy) to add the feature to allow people to join the server, but not manipulate anything until added to the whitelist?
  26. Offline

    dag10

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Wonderful, thank you!
    --- merged: Jan 20, 2011 5:50 PM ---
    Yes, that would be easy for him (or anyone that's willing to download the source) to do.

    However, there's already another Bukkit plugin that does just that if I recall correctly.
  27. Offline

    webdevbrian

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Hmm, I tried downloading the .zip, when I extracted it it looks like it's the contents of a .jar file...after renaming it from a .zip to a jar, the plugin I don't believe loads, though also trying to download the 1.4 zip file and putting the folder into my plugin's directory also doesn't work.

    What am I doing wrong? I read through the documentation...
  28. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @lawina: Yeah, thats easy to add, but outsite the scoupe of whitelist. There should be already a plugin doing that.
    @webdevbrian: The extraction program you are using seems to unpack the content of the .zip file recursively, thats why it unpacks the .jar file, which it should not.
  29. Offline

    webdevbrian

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    You are absolutely correct, I'm on a mac right now, it seems the default extractor loves to just drill through and unpack jar files. Getting 7zip cleared this up in two seconds.

    Thanks for the response, really looking forward to using this for my community!
  30. Offline

    lawina

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thank you, however the only whitelist plugin that doesn't kick is sadly abandoned by the author and no longer works with the latest version of Bukkit, which is why I asked :)
  31. Offline

    Beiufin

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Could you please include the bukkit build you tested your latest version against? Thanks!

    EDIT: I see you have it on the page the DL link brings you too!
  32. Offline

    Silence

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I've updated the plugin for #115 and fixed a few glitches to be prepaired for SQL support :)
    Update is only needed if the old one does not work anymore for you: Never change a running bukkit server :p

Share This Page