You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@syncope.apache.org by Adam Levine <ad...@gmail.com> on 2019/04/05 17:46:45 UTC
Preconfigured MasterContent.xml
I like to keep initial structuring in a repeatable form. For instance, I
have LDIFs I import to build out my custom schema, and then the LDAP
hierarchy itself, and then seed with base content. Recreating this by hand
is not something anyone wants to do.
With that, is there a way to build out content to feed MasterContent.xml,
other than wiring everything in the GUI and exporting? I could edit the
XML by hand, but that, too, looks fragile if it's dependent upon correct
GUID cross-references.
Thank you !
Re: Preconfigured MasterContent.xml
Posted by Francesco Chicchiriccò <il...@apache.org>.
On 22/04/19 09:35, Adam Levine wrote:
> This question again :)
>
> I think I gave too much information and confused my question:
>
> I want to create XML Spring beans, and use those to make
> [Domain]Content.xml
>
> <bean id="domain" class="org.apache.....Domain">
> <property name="jdbcConnection" ref="jdbcBean"/>
> <property name="realms" .....
> <property name="types"
> <property name="realms"
> <property name="policies"
> ......
> </bean>
>
> Can this be done? I can't find a Domain object graph.
> If this can be done, which classes should I look at to load and export?
>
> Thank you again. I hope this time I don't confuse anyone.
So, you want to create a Java class, to be used as Spring bean as above,
which will take care to generate [Master]Content.xml?
If so, I would suggest to take a look at
https://github.com/apache/syncope/blob/2_1_X/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/content/XMLContentExporter.java
Start from the export() method and follow the calls.
FYI, that class is the one behind the "export configuration" feature
accessible via REST under GET /configurations/stream or from Admin Console.
Regards.
> On Mon, Apr 8, 2019 at 2:57 AM Francesco Chicchiriccò
> <ilgrosso@apache.org <ma...@apache.org>> wrote:
>
> On 08/04/19 09:51, Adam Levine wrote:
>> Francesco, thank you for your reply.
>>
>> I will look at that link and see what more it can tell me.
>> But, I think maybe my question is misunderstood.
>>
>> I'd like to create the content of the Content.xml by hand, which
>> yes, is then fed into an initial deployment.
>
> Ok, I see.
>
> I would suggest anyway to not start from scratch, but at least
> from an existing
>
> core/src/main/resources/domains/MasterContent.xml
>
> in order to avoid missing important stuff.
>
>> I find creating structure for a system in text to be manageable.
>> Using only the GUI to configure everything is a slower process,
>> and it's not as easy to proof that all my content is there.
>> This will be like writing LDIF text files, and then sending that
>> into LDAP to create your hierarchies.
>>
>> One of my concerns in creating the content by hand is not knowing
>> how to handle items that have IDs or use IDs to show their
>> parent. It looks like those numbers are generated by the GUI,
>> which would make editing the file by hand more difficult.
>
> The UUID values are generated by the Core code, during the
> database insertion process; we chose the UUID format because it is
> portable across deployments and avoids conflicts.
>
> If you are looking for a simple way to generated correct UUID
> values, just visit
>
> https://www.uuidgenerator.net/
>
> (version 4)
>
> HTH
> Regards.
>
>> On Mon, Apr 8, 2019, 2:33 AM Francesco Chicchiriccò
>> <ilgrosso@apache.org <ma...@apache.org>> wrote:
>>
>> Hi,
>> feeding Syncope's internal storage with initial content is
>> exactly the purpose of *Content.xml - MasterContent.xml for
>> the Master domain - you might be interested in [1].
>>
>> The export feature (you can access either via REST under GET
>> /configurations/stream or from Admin Console after clicking
>> on the top-right triple gear icon) takes element precedence
>> into account - so, any Realm is exported before any
>> LogicActions referring to it, for example.
>>
>> You are naturally free to add / change / remove any element
>> from the exported MasterContent.xml before attempting to
>> start Syncope with it - as always, watch the log files for
>> any error.
>>
>> Regards.
>>
>> [1]
>> http://syncope.apache.org/docs/2.1/reference-guide.html#deal-with-internal-storage-export-import
>>
>> On 07/04/19 20:53, Adam Levine wrote:
>>> I had a thought that I could wire up beans using Spring
>>> IOC. From there I could instantiate and export as XML.
>>> However, I'm digging through, trying to find my parent level
>>> class, and not having much luck. And even if/when I do,
>>> there's the question of having GUIDs on entries: are they
>>> required for initial import? If they're all contained
>>> within a singular domain content file, do they know their
>>> proper parent association when relevant?
>>>
>>>
>>> Beyond being repeatable configuration, this would allow for
>>> iterative and better consistency in naming and linking, and
>>> avoiding my often scenario of "oops, forgot to create this
>>> piece first".
>>>
>>> Is what I'm wanting to do feasible, or is the web console
>>> the only way to build out content?
>>>
>>> thank you for your guidance!
>>>
>>>
>>> On Fri, Apr 5, 2019, 12:46 PM Adam Levine
>>> <adam.l.levine@gmail.com <ma...@gmail.com>>
>>> wrote:
>>>
>>> I like to keep initial structuring in a repeatable form.
>>> For instance, I have LDIFs I import to build out my
>>> custom schema, and then the LDAP hierarchy itself, and
>>> then seed with base content. Recreating this by hand is
>>> not something anyone wants to do.
>>> With that, is there a way to build out content to feed
>>> MasterContent.xml, other than wiring everything in the
>>> GUI and exporting? I could edit the XML by hand, but
>>> that, too, looks fragile if it's dependent upon correct
>>> GUID cross-references.
>>>
>>> Thank you !
>>>
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/
Re: Preconfigured MasterContent.xml
Posted by Adam Levine <ad...@gmail.com>.
This question again :)
I think I gave too much information and confused my question:
I want to create XML Spring beans, and use those to make
[Domain]Content.xml
<bean id="domain" class="org.apache.....Domain">
<property name="jdbcConnection" ref="jdbcBean"/>
<property name="realms" .....
<property name="types"
<property name="realms"
<property name="policies"
......
</bean>
Can this be done? I can't find a Domain object graph.
If this can be done, which classes should I look at to load and export?
Thank you again. I hope this time I don't confuse anyone.
On Mon, Apr 8, 2019 at 2:57 AM Francesco Chicchiriccò <il...@apache.org>
wrote:
> On 08/04/19 09:51, Adam Levine wrote:
>
> Francesco, thank you for your reply.
>
> I will look at that link and see what more it can tell me. But, I think
> maybe my question is misunderstood.
>
> I'd like to create the content of the Content.xml by hand, which yes, is
> then fed into an initial deployment.
>
> Ok, I see.
>
> I would suggest anyway to not start from scratch, but at least from an
> existing
>
> core/src/main/resources/domains/MasterContent.xml
>
> in order to avoid missing important stuff.
>
> I find creating structure for a system in text to be manageable. Using
> only the GUI to configure everything is a slower process, and it's not as
> easy to proof that all my content is there. This will be like writing
> LDIF text files, and then sending that into LDAP to create your hierarchies.
>
> One of my concerns in creating the content by hand is not knowing how to
> handle items that have IDs or use IDs to show their parent. It looks like
> those numbers are generated by the GUI, which would make editing the file
> by hand more difficult.
>
> The UUID values are generated by the Core code, during the database
> insertion process; we chose the UUID format because it is portable across
> deployments and avoids conflicts.
>
> If you are looking for a simple way to generated correct UUID values, just
> visit
>
> https://www.uuidgenerator.net/
>
> (version 4)
>
> HTH
> Regards.
>
> On Mon, Apr 8, 2019, 2:33 AM Francesco Chicchiriccò <il...@apache.org>
> wrote:
>
>> Hi,
>> feeding Syncope's internal storage with initial content is exactly the
>> purpose of *Content.xml - MasterContent.xml for the Master domain - you
>> might be interested in [1].
>>
>> The export feature (you can access either via REST under GET
>> /configurations/stream or from Admin Console after clicking on the
>> top-right triple gear icon) takes element precedence into account - so, any
>> Realm is exported before any LogicActions referring to it, for example.
>>
>> You are naturally free to add / change / remove any element from the
>> exported MasterContent.xml before attempting to start Syncope with it - as
>> always, watch the log files for any error.
>>
>> Regards.
>>
>> [1]
>> http://syncope.apache.org/docs/2.1/reference-guide.html#deal-with-internal-storage-export-import
>>
>> On 07/04/19 20:53, Adam Levine wrote:
>>
>> I had a thought that I could wire up beans using Spring IOC. From there
>> I could instantiate and export as XML. However, I'm digging through,
>> trying to find my parent level class, and not having much luck. And even
>> if/when I do, there's the question of having GUIDs on entries: are they
>> required for initial import? If they're all contained within a singular
>> domain content file, do they know their proper parent association when
>> relevant?
>>
>>
>> Beyond being repeatable configuration, this would allow for iterative and
>> better consistency in naming and linking, and avoiding my often scenario of
>> "oops, forgot to create this piece first".
>>
>> Is what I'm wanting to do feasible, or is the web console the only way to
>> build out content?
>>
>> thank you for your guidance!
>>
>>
>> On Fri, Apr 5, 2019, 12:46 PM Adam Levine <ad...@gmail.com>
>> wrote:
>>
>>> I like to keep initial structuring in a repeatable form. For instance, I
>>> have LDIFs I import to build out my custom schema, and then the LDAP
>>> hierarchy itself, and then seed with base content. Recreating this by hand
>>> is not something anyone wants to do.
>>>
>>> With that, is there a way to build out content to feed
>>> MasterContent.xml, other than wiring everything in the GUI and exporting?
>>> I could edit the XML by hand, but that, too, looks fragile if it's
>>> dependent upon correct GUID cross-references.
>>>
>>> Thank you !
>>>
>> --
> Francesco Chicchiriccò
>
> Tirasa - Open Source Excellencehttp://www.tirasa.net/
>
> Member at The Apache Software Foundation
> Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMailhttp://home.apache.org/~ilgrosso/
>
>
Re: Preconfigured MasterContent.xml
Posted by Francesco Chicchiriccò <il...@apache.org>.
On 08/04/19 09:51, Adam Levine wrote:
> Francesco, thank you for your reply.
>
> I will look at that link and see what more it can tell me. But, I
> think maybe my question is misunderstood.
>
> I'd like to create the content of the Content.xml by hand, which yes,
> is then fed into an initial deployment.
Ok, I see.
I would suggest anyway to not start from scratch, but at least from an
existing
core/src/main/resources/domains/MasterContent.xml
in order to avoid missing important stuff.
> I find creating structure for a system in text to be manageable.
> Using only the GUI to configure everything is a slower process, and
> it's not as easy to proof that all my content is there. This will
> be like writing LDIF text files, and then sending that into LDAP to
> create your hierarchies.
>
> One of my concerns in creating the content by hand is not knowing how
> to handle items that have IDs or use IDs to show their parent. It
> looks like those numbers are generated by the GUI, which would make
> editing the file by hand more difficult.
The UUID values are generated by the Core code, during the database
insertion process; we chose the UUID format because it is portable
across deployments and avoids conflicts.
If you are looking for a simple way to generated correct UUID values,
just visit
https://www.uuidgenerator.net/
(version 4)
HTH
Regards.
> On Mon, Apr 8, 2019, 2:33 AM Francesco Chicchiriccò
> <ilgrosso@apache.org <ma...@apache.org>> wrote:
>
> Hi,
> feeding Syncope's internal storage with initial content is exactly
> the purpose of *Content.xml - MasterContent.xml for the Master
> domain - you might be interested in [1].
>
> The export feature (you can access either via REST under GET
> /configurations/stream or from Admin Console after clicking on the
> top-right triple gear icon) takes element precedence into account
> - so, any Realm is exported before any LogicActions referring to
> it, for example.
>
> You are naturally free to add / change / remove any element from
> the exported MasterContent.xml before attempting to start Syncope
> with it - as always, watch the log files for any error.
>
> Regards.
>
> [1]
> http://syncope.apache.org/docs/2.1/reference-guide.html#deal-with-internal-storage-export-import
>
> On 07/04/19 20:53, Adam Levine wrote:
>> I had a thought that I could wire up beans using Spring IOC.
>> From there I could instantiate and export as XML. However, I'm
>> digging through, trying to find my parent level class, and not
>> having much luck. And even if/when I do, there's the question of
>> having GUIDs on entries: are they required for initial import? If
>> they're all contained within a singular domain content file, do
>> they know their proper parent association when relevant?
>>
>>
>> Beyond being repeatable configuration, this would allow for
>> iterative and better consistency in naming and linking, and
>> avoiding my often scenario of "oops, forgot to create this piece
>> first".
>>
>> Is what I'm wanting to do feasible, or is the web console the
>> only way to build out content?
>>
>> thank you for your guidance!
>>
>>
>> On Fri, Apr 5, 2019, 12:46 PM Adam Levine
>> <adam.l.levine@gmail.com <ma...@gmail.com>> wrote:
>>
>> I like to keep initial structuring in a repeatable form. For
>> instance, I have LDIFs I import to build out my custom
>> schema, and then the LDAP hierarchy itself, and then seed
>> with base content. Recreating this by hand is not something
>> anyone wants to do.
>> With that, is there a way to build out content to feed
>> MasterContent.xml, other than wiring everything in the GUI
>> and exporting? I could edit the XML by hand, but that, too,
>> looks fragile if it's dependent upon correct GUID
>> cross-references.
>>
>> Thank you !
>>
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/
Re: Preconfigured MasterContent.xml
Posted by Adam Levine <ad...@gmail.com>.
Francesco, thank you for your reply.
I will look at that link and see what more it can tell me. But, I think
maybe my question is misunderstood.
I'd like to create the content of the Content.xml by hand, which yes, is
then fed into an initial deployment.
I find creating structure for a system in text to be manageable. Using
only the GUI to configure everything is a slower process, and it's not as
easy to proof that all my content is there. This will be like writing
LDIF text files, and then sending that into LDAP to create your hierarchies.
One of my concerns in creating the content by hand is not knowing how to
handle items that have IDs or use IDs to show their parent. It looks like
those numbers are generated by the GUI, which would make editing the file
by hand more difficult.
Does that explain my question better?
Thank you!
On Mon, Apr 8, 2019, 2:33 AM Francesco Chicchiriccò <il...@apache.org>
wrote:
> Hi,
> feeding Syncope's internal storage with initial content is exactly the
> purpose of *Content.xml - MasterContent.xml for the Master domain - you
> might be interested in [1].
>
> The export feature (you can access either via REST under GET
> /configurations/stream or from Admin Console after clicking on the
> top-right triple gear icon) takes element precedence into account - so, any
> Realm is exported before any LogicActions referring to it, for example.
>
> You are naturally free to add / change / remove any element from the
> exported MasterContent.xml before attempting to start Syncope with it - as
> always, watch the log files for any error.
>
> Regards.
>
> [1]
> http://syncope.apache.org/docs/2.1/reference-guide.html#deal-with-internal-storage-export-import
>
> On 07/04/19 20:53, Adam Levine wrote:
>
> I had a thought that I could wire up beans using Spring IOC. From there I
> could instantiate and export as XML. However, I'm digging through, trying
> to find my parent level class, and not having much luck. And even if/when
> I do, there's the question of having GUIDs on entries: are they required
> for initial import? If they're all contained within a singular domain
> content file, do they know their proper parent association when relevant?
>
>
> Beyond being repeatable configuration, this would allow for iterative and
> better consistency in naming and linking, and avoiding my often scenario of
> "oops, forgot to create this piece first".
>
> Is what I'm wanting to do feasible, or is the web console the only way to
> build out content?
>
> thank you for your guidance!
>
>
> On Fri, Apr 5, 2019, 12:46 PM Adam Levine <ad...@gmail.com> wrote:
>
>> I like to keep initial structuring in a repeatable form. For instance, I
>> have LDIFs I import to build out my custom schema, and then the LDAP
>> hierarchy itself, and then seed with base content. Recreating this by hand
>> is not something anyone wants to do.
>>
>> With that, is there a way to build out content to feed MasterContent.xml,
>> other than wiring everything in the GUI and exporting? I could edit the
>> XML by hand, but that, too, looks fragile if it's dependent upon correct
>> GUID cross-references.
>>
>> Thank you !
>>
>
> --
> Francesco Chicchiriccò
>
> Tirasa - Open Source Excellencehttp://www.tirasa.net/
>
> Member at The Apache Software Foundation
> Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMailhttp://home.apache.org/~ilgrosso/
>
>
Re: Preconfigured MasterContent.xml
Posted by Francesco Chicchiriccò <il...@apache.org>.
Hi,
feeding Syncope's internal storage with initial content is exactly the
purpose of *Content.xml - MasterContent.xml for the Master domain - you
might be interested in [1].
The export feature (you can access either via REST under GET
/configurations/stream or from Admin Console after clicking on the
top-right triple gear icon) takes element precedence into account - so,
any Realm is exported before any LogicActions referring to it, for example.
You are naturally free to add / change / remove any element from the
exported MasterContent.xml before attempting to start Syncope with it -
as always, watch the log files for any error.
Regards.
[1]
http://syncope.apache.org/docs/2.1/reference-guide.html#deal-with-internal-storage-export-import
On 07/04/19 20:53, Adam Levine wrote:
> I had a thought that I could wire up beans using Spring IOC. From
> there I could instantiate and export as XML. However, I'm digging
> through, trying to find my parent level class, and not having much
> luck. And even if/when I do, there's the question of having GUIDs on
> entries: are they required for initial import? If they're all
> contained within a singular domain content file, do they know their
> proper parent association when relevant?
>
>
> Beyond being repeatable configuration, this would allow for iterative
> and better consistency in naming and linking, and avoiding my often
> scenario of "oops, forgot to create this piece first".
>
> Is what I'm wanting to do feasible, or is the web console the only way
> to build out content?
>
> thank you for your guidance!
>
>
> On Fri, Apr 5, 2019, 12:46 PM Adam Levine <adam.l.levine@gmail.com
> <ma...@gmail.com>> wrote:
>
> I like to keep initial structuring in a repeatable form. For
> instance, I have LDIFs I import to build out my custom schema, and
> then the LDAP hierarchy itself, and then seed with base content.
> Recreating this by hand is not something anyone wants to do.
> With that, is there a way to build out content to feed
> MasterContent.xml, other than wiring everything in the GUI and
> exporting? I could edit the XML by hand, but that, too, looks
> fragile if it's dependent upon correct GUID cross-references.
>
> Thank you !
>
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/
Re: Preconfigured MasterContent.xml
Posted by Adam Levine <ad...@gmail.com>.
I had a thought that I could wire up beans using Spring IOC. From there I
could instantiate and export as XML. However, I'm digging through, trying
to find my parent level class, and not having much luck. And even if/when
I do, there's the question of having GUIDs on entries: are they required
for initial import? If they're all contained within a singular domain
content file, do they know their proper parent association when relevant?
Beyond being repeatable configuration, this would allow for iterative and
better consistency in naming and linking, and avoiding my often scenario of
"oops, forgot to create this piece first".
Is what I'm wanting to do feasible, or is the web console the only way to
build out content?
thank you for your guidance!
On Fri, Apr 5, 2019, 12:46 PM Adam Levine <ad...@gmail.com> wrote:
> I like to keep initial structuring in a repeatable form. For instance, I
> have LDIFs I import to build out my custom schema, and then the LDAP
> hierarchy itself, and then seed with base content. Recreating this by hand
> is not something anyone wants to do.
>
> With that, is there a way to build out content to feed MasterContent.xml,
> other than wiring everything in the GUI and exporting? I could edit the
> XML by hand, but that, too, looks fragile if it's dependent upon correct
> GUID cross-references.
>
> Thank you !
>