Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Hinweis: 
  1. Klicken Sie eine UI-Komponente an, die Sie verrechten möchten, z.B. einen Save Button.
  2. Klicken Sie bei Properties > Authorization > Rights auf ....
  3. Klicken Sie im folgenden Dialog Rights auf + New, um ein neues Recht hinzuzufügen.
  4. Geben Sie bei Right die Bezeichnung für ein neues Recht ein oder wählen Sie ein bereits existierendes Recht aus, z.B. CustomerSave.
  5. Wählen Sie bei Strategy einen für diese UI-Komponente möglichen Zustand aus, z.B. ENABLED.
  6. Klicken Sie auf OK.
Ergebnis:
  • AuthorizationResources - Im Projekt Management > Business Objects wird diese Klasse angelegt, um die Rechte global zu verwalten. 

    package com.company.example.business;
    
    import com.xdev.security.authorization.Resource;
    import com.xdev.security.authorization.ResourceEnum;
    import com.xdev.security.authorization.ui.Authorization;
    
    /**
     * Central collection of all authorization resources used in the project.
     */
    public enum AuthorizationResources implements ResourceEnum<AuthorizationResources> {
    	CUSTOMERSAVE("CustomerSave")
    	;
    
    	/**
    	 * Helper method to export all resource names.
    	 * <p>
    	 * Right click and select 'Run As' - 'Java Application'
    	 * </p>
    	 */
    	public static void main(String[] args) {
    		for (AuthorizationResources value : AuthorizationResources.values()) {
    			System.out.println(value.name);
    		}
    	}
    
    	/////////////////////////////
    	// implementation details //
    	///////////////////////////
    
    	private final String name;
    	private Resource resource;
    
    	private AuthorizationResources(final String name) {
    		this.name = name;
    	}
    
    	@Override
    	public String resourceName() {
    		return this.name;
    	}
    
    	@Override
    	public Resource resource() {
    		if (this.resource == null) {
    			this.resource = Authorization.resource(this.name);
    		}
    
    		return this.resource;
    	}
    }
  • UI-Komponente - Die UI-Komponente wird mit dem Recht verknüpft.

    /*
     * WARNING: Do NOT edit!<br>The content of this method is always regenerated
     * by the UI designer.
     */
    // <generated-code name="initUI">
    private void initUI() {
    	this.button = new XdevButton();
    	this.button.setCaption("Save");
    
    	Authorization.setSubjectEvaluatingComponentExtension(this.button, SubjectEvaluatingComponentExtension.Builder
    			.New().add(AuthorizationResources.CUSTOMERSAVE.resource(), SubjectEvaluationStrategy.ENABLED).build());
        Authorization.evaluateComponents(this);


  • No labels