Skip to content

Introduce AccessController #114

@ThorbenKuck

Description

@ThorbenKuck

Feature-Request-Checklist

Please make sure the feature you are requesting has not already been reported!

  • I have added the feature request label to this issue

If your checklist is not fully ticked, please try to complete it such that it does. Optional parts are not required. You can freely delete those. Either remove the Optional-tags or remove the whole Optional-part.

The following is a template to help you state the request clearly.


Description

The AccessController can be used, to check for permissions against the policy in place. We should utilize it.

The reason

If someone (for example) has no rights to use Sockets, we want to catch that and not create a Socket.

Connected parts

Many parts can earn a AccessController check.

Example

Checking wehter or not one may open sockets, can be done like this:

String address = ...
int port = ...
String action = "accept"
// String action = "resolve"
// String action = "connect"
// String action = "listen"
// String action = "connect,accept"
SocketPermission permission = new SocketPermission(address + ":" + port);

try {
    AccessController.checkPermissions(permission);
    // Access okay, we may do this with Sockets
} catch(AccessControlException e) {
    // Not allowed
}

Design

The feature i request ...

  • ... lowers coupling between components
  • ... highers cohesion for a component
  • ... reduces complexity of certain components
  • ... reduces the total complexity within NetCom2
  • ... introduces new/better patterns
  • ... allows for reusability
  • ... removes code duplications
  • ... highers security for the using developers

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestThe Issue requests a new feature

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions