BIND 10 #999: Integrate ACLs into b10-resolver
BIND 10 Development
do-not-reply at isc.org
Thu Jun 23 07:40:29 UTC 2011
#999: Integrate ACLs into b10-resolver
-------------------------------------+-------------------------------------
Reporter: | Owner: jinmei
vorner | Status: accepted
Type: task | Milestone:
Priority: major | Sprint-20110628
Component: | Resolution:
Unclassified | Sensitive: 0
Keywords: | Sub-Project: DNS
Defect Severity: N/A | Estimated Difficulty: 4.0
Feature Depending on Ticket: | Total Hours: 0
Add Hours to Ticket: 0 |
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:7 vorner]:
> > I've been thinking about the same concept for #999 and tentatively
> > defined a class named "Client":
>
> I didn't find the trac999 in git, so I couldn't have a look. But, do we
really need accessor methods for something that just holds some data
together? Anyway, it's not the main problem.
>
> I believe we need to integrate the two branches together sometime,
otherwise registration of all the various checks will be problematic. I
don't really care much about which class/struct is used as the context, I
just put there the simplest think that looked it should work.
I've pushed the latest trac999 code as trac999preview for reference.
It's a complete implementation with full tests and documentation,
although I don't think it a good target to review since it depends on
some unclear points of #998.
After looking at #769, I decided to not rely on it in order to reduce
dependency. Right now it has its own config parser/ACL loader as it
only uses a very simple form of rules. My intention is to get #998
and this branch completed and merged, then to integrate the loader
part of #999 with #769. There will be some duplicate effort, but I
thought this would be the fastest way to include the desired feature
in the next release.
The "Client" class is tentatively in the server_common module
(directly), but I'm not strongly pushing it by doing so - it's a
rather placeholder right now. But as I said I thought ACl was not a
good place for this concept either. I'm not pushing the specific name
of "Client" either - again it's tentative.
> > I'm not sure how many things that depend on specific contexts would be
> > reasonably defined under the acl namespace. Also, the concept of
> > "Packet" itself is not necessarily tied to access control. By
> > defining Client, I'd envision we'll eventually use it as a higher
> > level interface between ASIO and actual (auth/resolver) server
> > classes, that is, instead of getting a set of io_message,
> > query_message, ... etc. in Resolver::processMessage(), we'd pass a
> > "Client" object that encloses these types of parameters.
>
> Surely a good goal, I'm not against having the „context“ out of the ACL
thing. I'd like to have a place where we put all the TSIG checks, etc,
which is both ACL-related and DNS-related. The important part now is, I
believe, using the singleton loader. As you mentioned, you expect to have
this ready for review soon, this would be one of the TBD?
Yeah, that's a middle term idea.
--
Ticket URL: <http://bind10.isc.org/ticket/999#comment:8>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list