Jump to content
  • 0

Problema admin pass.


Bogdan1

Question

Salut, am şi eu o problemă la gm, mereu contul unui admin este spart..

are idee careva cum se face protectie la admin?

Adică, când el se loghează cu parola normală să intre pe server şi sa ii mai ceara o parola după, si daca nu o pune pe cea adevărata sa ia kick automat.

Daca stie, sper sa ma poata ajuta si pe mn.

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0
12 minutes ago, Bogdan1 said:

Nu vreau ca ala, vreau un alt sistem..

pai poti face chiar tu un sistem, de exemplu, poti face un tabel in baza de date unde sa inregistrezi ip-urile si user-ul adminilor pe care un admin cu grad mai mare sa le poata aproba din panel de exemplu pentru ca adminul sa se poata conecta pe server, in caz contrar, sa nu il lase sa se conecteze. Insa ar putea devenii enervant pentru cei cu ip dinamic, deci alta solutie ar fii sa faci un tabel, unde inregistrezi niste key-uri pentru fiecare admin, ceva parole secundare, sau nu neaparat un alt tabel, o alta coloana in tabelul pentru users, parola care sa le fie ceruta dupa introducerea parolei normale si sa primeasca kick daca o gresesc.

Edited by Ionut_WS
Link to comment
Share on other sites

  • 0

 

DEFINESTI

#define CUVANT_CHEIE "pui parola pe care vrei sa oceara"  

#define DIALOG_PAROLAADMIN 9921

forward LoginAdmin(playerid);

logina[MAX_PLAYERS], // la variabile

apoi la

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

pui 

if(dialogid == DIALOG_PAROLAADMIN)
    {
        if(response)
        {
            if(strfind(CUVANT_CHEIE, inputtext, true) == 0)
            {
                SCM(playerid, -1, "Te-ai logat cu succes ca staff.");
                KillTimer(logina[playerid]);
            }
            else return KickEx(playerid);
        }
        if(!response)return KickEx(playerid);
    }

 

la onplayerlogin

if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 1)
    {
        ShowPlayerDialog(playerid, DIALOG_PAROLAADMIN, DIALOG_STYLE_PASSWORD, "Conectare ca STAFF", "Scrie parola a staff-ului pentru a te conecta", "Gata", "");
        logina[playerid] = SetTimerEx("LoginAdmin",10000,false,"d",playerid);
    }

 

 iar ca public pui

 

public LoginAdmin(playerid)
{
    Kick(playerid);
    return 1;
}

 

Acesta este sistemul pe care il am si eu pe sa.engame.ro functioneaza perfect, daca iti va da erori imi spui ca poate am uitat eu sa copiez ceva din el sa iti pun aici :) dar eu zic ca e tot.

Edited by AlexxAdv
Link to comment
Share on other sites

  • 0
9 minutes ago, AlexxAdv said:

 

DEFINESTI

#define CUVANT_CHEIE "pui parola pe care vrei sa oceara"  

#define DIALOG_PAROLAADMIN 9921

forward LoginAdmin(playerid);

logina[MAX_PLAYERS], // la variabile

apoi la

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

pui 

if(dialogid == DIALOG_PAROLAADMIN)
    {
        if(response)
        {
            if(strfind(CUVANT_CHEIE, inputtext, true) == 0)
            {
                SCM(playerid, -1, "Te-ai logat cu succes ca staff.");
                KillTimer(logina[playerid]);
            }
            else return KickEx(playerid);
        }
        if(!response)return KickEx(playerid);
    }

 

la onplayerlogin

if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 1)

 

 iar ca public pui

 

public LoginAdmin(playerid)
{
    Kick(playerid);
    return 1;
}
    {
        ShowPlayerDialog(playerid, DIALOG_PAROLAADMIN, DIALOG_STYLE_PASSWORD, "Conectare ca STAFF", "Scrie parola a staff-ului pentru a te conecta", "Gata", "");
        logina[playerid] = SetTimerEx("LoginAdmin",10000,false,"d",playerid);
    }

 

Acesta este sistemul pe care il am si eu pe sa.engame.ro functioneaza perfect, daca iti va da erori imi spui ca poate am uitat eu sa copiez ceva din el sa iti pun aici :) dar eu zic ca e tot.

C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20063) : error 055: start of function body without function header
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : error 003: declaration of a local variable must appear in a compound block
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : warning 217: loose indentation
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : error 017: undefined symbol "playername2"
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : warning 215: expression has no effect
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : error 001: expected token: ";", but found "]"
C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\Localhost.pwn(20070) : fatal error 107: too many error messages on one lin

Link to comment
Share on other sites

  • 0

Am rezolvat, dar nu pot sa scap de public

LoginAdmin(playerid)
{
    KickEx(playerid);
    return 1;
  }
    {
        ShowPlayerDialog(playerid, DIALOG_PAROLAADMIN, DIALOG_STYLE_PASSWORD, "Conectare ca STAFF", "Scrie parola a staff-ului pentru a te conecta", "Gata", "");
        logina[playerid] = SetTimerEx("LoginAdmin",10000,false,"d",playerid);
    }

 

C:\Users\xBogdanSLL\Desktop\AICI SE COMPILEAZA\BBackRo.pwn(20064) : error 055: start of function body without function header

 

Iar linia este     {

Link to comment
Share on other sites

  • 0

Deci, am incurcat eu putin,

 

la onplayerlogin pui

 

if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 1)

{
        ShowPlayerDialog(playerid, DIALOG_PAROLAADMIN, DIALOG_STYLE_PASSWORD, "Conectare ca STAFF", "Scrie parola a staff-ului pentru a te conecta", "Gata", "");
        logina[playerid] = SetTimerEx("LoginAdmin",10000,false,"d",playerid);
    }

 

iar 

 

public LoginAdmin(playerid)
{
    KickEx(playerid);
    return 1;
  } 

 

este altceva, sper ca ai inteles. nu le pui pe amandoua in acelasi loc doar aia cu showplayerdialog pui la onplayerlogin, public-ul il pui dupa alt public, undeva.

  • Thanks 1
Link to comment
Share on other sites

  • 0
6 minutes ago, AlexxAdv said:

Deci, am incurcat eu putin,

 

la onplayerlogin pui

 

if(PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pHelper] >= 1)

{
        ShowPlayerDialog(playerid, DIALOG_PAROLAADMIN, DIALOG_STYLE_PASSWORD, "Conectare ca STAFF", "Scrie parola a staff-ului pentru a te conecta", "Gata", "");
        logina[playerid] = SetTimerEx("LoginAdmin",10000,false,"d",playerid);
    }

 

iar 

 

public LoginAdmin(playerid)
{
    KickEx(playerid);
    return 1;
  } 

 

este altceva, sper ca ai inteles. nu le pui pe amandoua in acelasi loc doar aia cu showplayerdialog pui la onplayerlogin, public-ul il pui dupa alt public, undeva.

Părea ciudat rău..

Am rezolvat, te pup mersi:*

Dar am o problemă. cand pun parola sa ma conectez imi da server clossed connection.. Nici nu apuc as imi pun parola normală.

Edited by Bogdan1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.