/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
2 spg.
Fra : Mogli


Dato : 06-07-03 21:31

Hej Allesammen.

Jeg har to spg. som jeg håber i kan hjælpe mig med.

1: Hvordan laver jeg et adgangssystem, så en bruger validere sig med
brugernavn / password, som ligger i en db, og på baggrund af dette kommer
programmet frem, og viser kun de ting vedkommende har rettigheder til. Enten
så de enkelte menupunkter er helt væk, eller bare skraveret væk. F.eks, så
kan en administrator komme til alle dele af programmet, imens en almindelig
bruger kun kan printe/lukke/søge.....

2: Da det skal være et flerbrugersystem, som der efter planen skal køre på
én server og ex. antal klienter. Hvordan klarer man så det med at de ikke
tilgår / ændrer i de samme oplysninger på samme tid. Er det her et
Statepattern ville være godt, eller findes der en anden løsning. Der må
gerne komme et eksempel med

Håber I kan hjælpe mig med de to spg.

Vh
Miki



 
 
Ulrik Magnusson (07-07-2003)
Kommentar
Fra : Ulrik Magnusson


Dato : 07-07-03 19:16



Mogli wrote:

> Hej Allesammen.
>
> Jeg har to spg. som jeg håber i kan hjælpe mig med.
>
> 1: Hvordan laver jeg et adgangssystem, så en bruger validere sig med
> brugernavn / password, som ligger i en db, og på baggrund af dette kommer
> programmet frem, og viser kun de ting vedkommende har rettigheder til. Enten
> så de enkelte menupunkter er helt væk, eller bare skraveret væk. F.eks, så
> kan en administrator komme til alle dele af programmet, imens en almindelig
> bruger kun kan printe/lukke/søge.....

Godt spørgsmål. Mit bud er at du kigger på javax.swing.Action.
De registrerede Action objekter skal så have kaldt setEnabled(true/false)
i henhold til brugerens rettigheder. Dette kunne fx. gøres ved login eller
i hvert fald før det bliver muligt at udføre funktionen.

Et lille eksempel, hvor kun brugeren ulrikm har lov til "paste":

public class ActionDemo
{
public static void main( String[] args )
{
String userID =
javax.swing.JOptionPane.showInputDialog("Please provide login id");
javax.swing.JFrame frame
= new javax.swing.JFrame();
javax.swing.JEditorPane editorPane
= new javax.swing.JEditorPane();
javax.swing.text.StyledEditorKit
editorKit = new javax.swing.text.StyledEditorKit();
editorPane.setEditorKit( editorKit );
javax.swing.Action[] actions = editorKit.getActions();
for( int i = 0; i < actions.length; i++ )
{
if( actions[i].getValue(javax.swing.Action.NAME).equals(
javax.swing.text.DefaultEditorKit.pasteAction ) )
{
// kun ulrikm har adgang til paste
actions[i].setEnabled( userID.equals("ulrikm") );
}
}
frame.getContentPane().setLayout( new java.awt.BorderLayout( ));
frame.getContentPane().add( new javax.swing.JScrollPane(editorPane),
java.awt.BorderLayout.CENTER );
frame.pack();
frame.show();
}
}

> 2: Da det skal være et flerbrugersystem, som der efter planen skal køre på
> én server og ex. antal klienter. Hvordan klarer man så det med at de ikke
> tilgår / ændrer i de samme oplysninger på samme tid. Er det her et
> Statepattern ville være godt, eller findes der en anden løsning. Der må
> gerne komme et eksempel med

Den slags styres gerne så tæt på området, hvor det kan gå galt - mao. med
transaktioner på serveren.

Ulrik Magnusson


Anders Holmbech Niel~ (15-07-2003)
Kommentar
Fra : Anders Holmbech Niel~


Dato : 15-07-03 18:26

Hejsa

Her er det nok smartest at lave nogle roller lidt som i J2EE. sikkerhed.
Dvs. du har fx en administrator rolle, en bruger rolle og måske en readonly
rolle etc.

Disse roller knytter du så brugere til. Dvs i databasen har du en rolle-user
tabel og en user tabel mm.
Dette kunne se sådan ud:

roles_user: id, userid, rolename
user: id, userid, userpassword, username etc.
og fx. en userpref tabel til brugernes opsætning: userpref: id, userid, key,
value

Og så er det eller bare at definere hvilke rettigheder i dit program der
kræver hvilke roller.

Forresten hvis det er en serverside program du er igang med så har tomcat et
db realm du kan bruge og så kan du ellers bruger J2EE sikkerhed i din
webapp. Så er du i hvert fald hurtigt igang.

Gdo fornøjelse.

MVH

Anders

Mogli wrote:
> Hej Allesammen.
>
> Jeg har to spg. som jeg håber i kan hjælpe mig med.
>
> 1: Hvordan laver jeg et adgangssystem, så en bruger validere sig med
> brugernavn / password, som ligger i en db, og på baggrund af dette
> kommer programmet frem, og viser kun de ting vedkommende har
> rettigheder til. Enten så de enkelte menupunkter er helt væk, eller
> bare skraveret væk. F.eks, så kan en administrator komme til alle
> dele af programmet, imens en almindelig bruger kun kan
> printe/lukke/søge.....
>
> 2: Da det skal være et flerbrugersystem, som der efter planen skal
> køre på én server og ex. antal klienter. Hvordan klarer man så det
> med at de ikke tilgår / ændrer i de samme oplysninger på samme tid.
> Er det her et Statepattern ville være godt, eller findes der en anden
> løsning. Der må gerne komme et eksempel med
>
> Håber I kan hjælpe mig med de to spg.
>
> Vh
> Miki



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste