[Please honor Reply-To: smf-discuss at opensolaris.org]

Background: We have a need for common storage of various configuration
            properties relating to Active Directory domains (but not
            necessarily only AD domains).  System components that need
            to access this include:

             - the CIFS server
             - the ID mapping service (svc:/system/idmap)
             - nss_ad (AD name service backend for name service switch)
             - possibly the CIFS client
             - possibly other components in the future (imagine if we
               had something like ADSI -AD scripting interface- for
               Solaris)

            Configuration properties mostly include items that can be,
            and normally would be auto-discovered but which the sysadmin
            might want to override.  E.g., a list of preferred domain
            controllers.

One possibility that occurred to me:

    svc:/domain/<domain-type>/<leftmost-label>/../<rightmost-label>:default

For example, properties for the AD domain 'foo.bar.example' would be
stored in 'svc:/domain/ad/foo/bar/example:default'.

Problems:

1) Wouldn't it be nice to be able to use actual domain names instead of
   having to replace '.' with '/'?

   I.e., 'svc:/domain/ad/foo.bar.example:default' reads a lot better
   than 'svc:/domain/ad/foo/bar/example:default'.

2) What about internationalized domain names?

   Should IDN labels be used in ACE (punycoded, ASCII) form?  If stored
   in Unicode form (probably UTF-8) how would we deal with such FMRIs in
   non-UTF-8 locales?

   Yes, this question answers itself: use ACE encoding.

   I don't know what the story is with AD and IDN today, but it used to
   be that early versions of AD allowed the use of internationalized
   domain names well outside the IDN framework.  This might complicate
   things if we want to support such AD domains.  But then, I'd think
   the burden is on Microsoft to deal with making such legacy AD domains
   interoperate in a world where IDN has been deployed.

3) Consider http://blogs.sun.com/nico/entry/can_we_map_ids_between

   We may someday want to assign locally-generated SID prefixes to
   non-AD domains.  Such SID prefixes would have to be unique.  How can
   we make SMF enforce this?  And if we can't, can we live with that?

   If we store them in the domain's svc FMRI then we can't enforce
   uniqueness.  Even if we store them in svc:/domain/<domain-type> in a
   multi-valued property we still lack a way to enforce uniqueness.

And yet I don't want to invent a non-SMF method for storing all this
stuff.

Comments?  Advice?

I half-expect revulsion.

Nico
-- 

Reply via email to