1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

HereAuth fwrite error

Discussion in 'Plugin Help' started by Hipster, Apr 30, 2017.

  1. Hipster

    Hipster Zombie

    Messages:
    214
    Warning: fwrite() expects parameter 1 to be resource, boolean given in /plugins/HereAuth_v1.0-Dev#229/src/HereAuth/Logger/StreamAuditLogger.php on line 58
     
  2. Awzaw

    Awzaw Zombie Pigman Poggit Admin

    Messages:
    726
    GitHub:
    awzaw
    HereAuth hasn't yet been updated for the latest API: you could either try to fix it yourself and submit a PR (probably you only need to fix changes to certain class paths), or ask the author politely!

    Here's the official repo:
    https://github.com/PEMapModder/HereAuth
     
  3. WreckagePE / ZAYD

    WreckagePE / ZAYD Slime

    Messages:
    82
    I wouldn't recommend asking the author XD. Just use SimpleAuth for the time being
     
  4. Awzaw

    Awzaw Zombie Pigman Poggit Admin

    Messages:
    726
    GitHub:
    awzaw
    He's a busy person, but I'm sure he'll update it soon, or maybe @SOFe will do it ;-)
     
    Lowkey and HimbeersaftLP like this.
  5. SOFe

    SOFe Administrator Staff Member PMMP Team Poggit Admin

    Messages:
    1,968
    GitHub:
    sof3
    Happens even after restart?
     
  6. Hipster

    Hipster Zombie

    Messages:
    214
    Ya if someone registers...
     
  7. SOFe

    SOFe Administrator Staff Member PMMP Team Poggit Admin

    Messages:
    1,968
    GitHub:
    sof3
    * What OS are you using?
    * Please show your config file
    * Please make sure your server has write permissions to your files.
     
  8. Hipster

    Hipster Zombie

    Messages:
    214
    I tried on linux and windows too
    Config:
    Code:
    ---
    # HereAuth configuration file
    DefaultSettings:
      AutoAuth:
        ClientSecretAuth: false
        IPAuth: false
        UUIDAuth: false
      Masking:
        Location:
          Enabled: false
        Inventory: false
      MultiAuth:
        Skin: false
        IP: false
      MultiAuthTimeout: 14
    Blocking:
      # Move
      Move:
        # Move from one place to one place.
        Locomotion: true
        # Rotate head
        Rotation: true
      # Get hurt
      Damage: true
      # Touch other entities
      Attack: true
      # Drop items from inventory
      DropItem: true
      Touch: true
      # Pick a dropped item into inventory
      Pick: true
      # Eat food by long-clicking the screen
      Eat: true
    MultiSesCtrl:
      Enabled: true
      CheckIP: false
    BlockPasswordChat: true
    
    # Send chat/tip/popup to remind player to register/login
    RemindLogin:
      # Messages to send to players
      Message:
        Register: Please register by typing password into chat
        Login: Please login by typing password into chat
      # Type of message.
      # Options: chat, popup, tip, none
      Type: popup
      # Frequency interval, in seconds, of how often to send the message
      # Value is rounded down to 0.05 second
      Interval: 0.5
    
    # Force players to register before playing
    ForceRegister:
      # If this is set to false, players have to execute /register to register.
      Enabled: true
      Reminder: "[HereAuth] Protip: type '/register' in chat to register so that other people can't impersonate you."
    
    # The place to store data
    Database:
      # The type of database to use.
      # Currently, only "JSON" and "MySQL" are available.
      # JSON: one JSON per account, plus one metadata JSON file, plus one lightweight SQLite database for storing
      #   registering rate against IP addresses
      Type: JSON
      # Please check this if you are using JSON.
      JSON:
        # The path of the accounts data folder
        # If you want to specify an absolute path, use "accounts" instead.
        DataFolder: accounts
        # If this is set to "true", the file for "steve" will be located at .../s/steve.json
        # If this is set to "false", the file for "steve" will be located at .../steve.json
        EnableLeadingIndex: false
      # You MUST correct these if you are using MySQL
      MySQL:
        # The connection details of your database
        Connection:
          # IP address/DNS address to your MySQL database
          # If it is hosted on the same machine, "localhost" is also OK, but it sometimes doesn't work
          #   (or you need to fill in the "socket" line)
          Address: example.com
          # Port of the MySQL database. It is 3306 by default.
          Port: 3306
          # Username to the MySQL account.
          # Avoid using "root", in case the plugin accidentally does complete destruction to your whole database
          #   (e.g. including other schemas)
          Username: root
          # Password to the MySQL account.
          # Yes, this has to be in plaintext, so make sure to keep this file secret (unless your password is blank,
          #   which is highly discouraged).
          Password: ""
          # Schema for HereAuth in the MySQL database.
          # If it is not created yet, HereAuth will automatically create it.
          Schema: hereauth
          # Socket to connect to the MySQL database.
          # This may be required if you are using localhost on a Unix-like machine.
          # Otherwise, just ignore this one.
          Socket: ""
        # Prefix for table names
        # If your database provider only provides you with one schema, you may want to add a prefix to the table names to
        #   avoid duplicating table names.
        TablePrefix: ha
    
    Commands:
      # The number of lines of content in each /help-alike command response, e.g. /opt
      # This does not include the header and footer lines (e.g. Showing /opt page of ? of ?)
      HelpPageSize: 8
      # Options related to MultiAuth
      MultiAuth:
        # If an MFA timeout (in days) is small, it is between 0 and...
        SmallBound: 1
        # If an MFA timeout (in days) is big, it is greater than...
        BigBound: 30
    
    # Options related to audit logger
    AuditLogger:
      # Where to log in?
      # This is only the folder, relative to the plugin's data folder.
      # If you want to specify an absolute path, start the file with "/".
      # If you want to specify another drive (Windows), e.g. on E drive (E:), put the file name like this:
      #   file://E:/path/to/your/directory
      # This can also be any **writable** URIs supported by [URL]http://php.net/wrappers[/URL]
      LogFolder: audit/
    
      # What to log?
      # These should be file names relative to LogFolder mentioned above, or start with a / for absolute paths
      # Put /NUL (Windows only) if you don't want to log that entry.
      Log:
        # Log registering
        # Columns: time, name, IP
        # You usually don't need to do this, since the same data are saved in Database as well
        Register: /NUL
        # Log successful logins. Regisitering and players who didn't register (and don't need to register) are not included.
        # Columns: time, name, IP, login method (secret, uuid, ip, password)
        Login: logins.log
        # Log "push" incidents, where a player is kicked because he rejoined from the same device.
        # This usually happens when a player crashed, and this (>99.9% of the time) does not reflect two different players
        #   joining with the same username.
        # Columns: time, name, old IP, new IP
        Push: /NUL
        # Log "bump" incidents, where a player cannot join because another player (from another device) of the same username
        #   is already online on the server
        # This may reflect chances of account occupying, where a player cannot join because someone else is online with his
        #   username (with or without authenticating).
        # Columns: time, name, old IP, new IP, old UUID, new UUID, old player's status (loading, register, login, auth, noreg)
        Bump: bumps.log
        # Log failure of logins, where wrong password is typed
        # Columns: time, name, IP
        Invalid: failure.log
        # Log incidents where players are kicked because they could not login within the time limited by Login.Timeout
        # Columns: time, name, IP
        Timeout: timeout.log
        # Log incidents where players are kicked because multi-factor authentication failed.
        # Columns: time, name, wrong data type (e.g. "skin", "ip"), wrong data value (e.g. name + a base64-encoded dump of
        #   the wrong skin)
        Factor: factor.log
    
    # Options related to registering
    Registration:
      # Registration throttle. Limits number of registrations from an IP per time.
      # If ForceRegister is set to false, players who didn't register will not be counted as a registration.
      RateLimit:
        Accounts: 3
        Days: 30
      # Minimum password length, in UTF-8 bytes. (i.e. if you put 6 here, you have to at least type two Chinese characters,
      #   since one Chinese character takes 3 bytes in UTF-8)
      MinLength: 4
      # Maximum password length, in UTF-8 bytes.
      # Put -1 for infinity (non-modded MCPE will limit it, though)
      MaxLength: -1
      # Enable this to disallow the password to be purely letters (26 alphabets of two cases)
      BanPureLetters: false
      # Enable this to disallow the password to be purely numbers
      BanPureNumbers: false
      # Disallow passwords starting with slashes
      # This may be useful for stopping players from typing their passwords with /register or /login
      DisallowSlashes: true
      # Require the player to repeat their password after typing for the first time.
      RequireConfirm: true
      # Extra information to require (mandatory) when registering
      # These data will be stored into the database (into the `opts` column), but HereAuth will not automatically do
      # anything about it.
      # If you want these data to be handled, e.g. if you want an email to be sent to that address, please request/make
      #   another plugin that will handle them. The developer documentation has a tutorial for that.
      # The "RegExp" line is optional. If the player input does **not** match your regular expression (if any), it will be
      #   rejected, just like how password is rejected if it is too short.
      # The RegExp used here is interpreted using PCRE (Perl-Compatible Regular Expression). Please be careful to comply
      #   with YAML formats (especially with backslashes).
      # The "ErrorMessage" line is required if the "RegExp" line is present. It will be sent if the regular experssion is
      #   violated.
      ExtraFields:
    #  - Message: "[HereAuth] Please enter your email."
    #    FieldName: email
    #    RegExp: "/^[A-z0-9_\\-]+[@][A-z0-9_\\-]+([.][A-z0-9_\\-]+)+[A-z.]{2,4}$/"
    #    ErrorMessage: This is not a valid email address!
      ## Delete the # on the above three lines to enable. You can also duplicate it to make another field.
    
    # Options related to login
    Login:
      # Kick the player if he can't login in this number of attempts.
      MaxAttempts: 5
      # Number of seconds to block the player's IP address if MaxAttempts is exceeded
      MaxAttemptsBlock: 600
      # Kick the player if he can't login in this period. Unit: seconds
      Timeout: 120
    
    # Make players' appearance change if they have not been authenticated
    Appearance:
      # Make unauthenticated/logged-out players invisible
      # This uses the "potion effect invisibility" style of invisibility, where modded players may be able to see the player
      #   and would be able to click on the player (but the player can be protected with the Blocking.Damage config)
      #   but without potion effect bubbles
      Invisible: false
      # Add text before player nametag
      PrependNametag: "§c["
      # Add text after player nametag
      AppendNametag: "]"
    ...
     
    Last edited by a moderator: Apr 30, 2017
  9. SOFe

    SOFe Administrator Staff Member PMMP Team Poggit Admin

    Messages:
    1,968
    GitHub:
    sof3
    Try changing all /NUL values to "*.log", e.g. "register.log", "login.log", etc.
     
  10. Awzaw

    Awzaw Zombie Pigman Poggit Admin

    Messages:
    726
    GitHub:
    awzaw
    There are some updates needed too for API 5, such as Info
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.