sling-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Seifert (Confluence)" <conflue...@apache.org>
Subject [CONF] Apache Sling > Multitenancy scenarios and use cases
Date Tue, 12 Aug 2014 10:36:00 GMT
<html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <base href="https://cwiki.apache.org/confluence" />
        <style type="text/css">
    body, #email-content, #email-content-inner { font-family: Arial,FreeSans,Helvetica,sans-serif;
}
    body, p, blockquote, pre, code, td, th, li, dt, dd { font-size: 13px; }
    small { font-size: 11px; }

    body { width:100% !important; -webkit-font-smoothing: antialiased; }

    body,
    #email-wrapper { background-color: #f0f0f0; }
    #email-wrapper-inner { padding: 20px; text-align: center; }
    #email-content-inner { background-color: #fff; border: 1px solid #bbb; color: $menuTxtColour;
padding:20px; text-align:left; }
    #email-wrapper-inner > table { width: 100%; }
    #email-wrapper-inner.thin > table { margin: 0 auto; width: 50%; }
    #email-footer { padding: 0 16px 32px 16px; margin: 0; }

    .email-indent { margin: 8px 0 16px 0; }
    .email-comment { margin: 0 0 0 56px; }
    .email-comment.removed { background-color: #ffe7e7; border: 1px solid #df9898; padding:
0 8px;}

    #email-title-avatar { text-align: left; vertical-align: top; width: 48px; padding-right:
8px; }
    #email-title-flavor { margin: 0; padding: 0 0 4px 0; }
    #email-title-heading { font-size: 16px; line-height: 20px; min-height: 20px; margin: 0;
padding: 0; }
    #email-title .icon { border: 0; padding: 0 5px 0 0; text-align: left; vertical-align:
middle; }

    #email-actions { border-top: 1px solid #bbb; color: #505050; margin: 8px 0 0 0; padding:
0; }
    #email-actions td { padding-top: 8px; }
    #email-actions .left { max-width: 45%; text-align: left; }
    #email-actions .right { text-align: right; }
    .email-reply-divider { border-top: 1px solid #bbb; color: #505050; margin: 32px 0 8px
0; padding: 8px 0; }
    .email-section-title { border-bottom: 1px solid #bbb; margin: 8px 0; padding: 8px 0 0
0; }

    .email-metadata { color: #505050; }

    a { color: #326ca6; text-decoration: none; }
    a:hover { color: #336ca6; text-decoration: underline; }
    a:active {color: #326ca6; }

    a.email-footer-link { color: #505050; font-size: 11px; }

    .email-item-list { list-style: none; margin: 4px 0; padding-left: 0; }
    .email-item-list li { list-style: none; margin: 0; padding: 4px 0; }
    .email-list-divider { color: #505050; padding: 0 0.35em; }
    .email-operation-icon { padding-right: 5px; }

    .avatar { -ms-interpolation-mode: bicubic; border-radius: 3px;}
    .avatar-link { margin: 2px; }

    .tableview th { border-bottom: 1px solid #69C; font-weight: bold; text-align: left; }
    .tableview td { border-bottom: 1px solid #bbbbbb; text-align: left; padding: 4px 16px
4px 0; }

    .aui-message {  margin: 1em 0; padding: 8px; }
    .aui-message.info { background-color: #e0f0ff; border: 1px solid #9eb6d4; }
    .aui-message.success { background-color: #ddfade; border: 1px solid #93c49f; }
    .aui-message.error,
    .aui-message.removed { background-color: #ffe7e7; border: 1px solid #df9898; color: #000;
}

    .call-to-action-table { margin: 10px 1px 1px 1px;}
    .call-to-cancel-container, .call-to-action-container { padding: 5px 20px; }
    .call-to-cancel-container { border: 1px solid #aaa; background-color: #eee; border-radius:
3px; }
    .call-to-cancel-container a.call-to-cancel-button { background-color: #eee; font-size:
14px; line-height: 1; padding: 0; margin: 0; color: #666; font-family: sans-serif;}
    .call-to-action-container { border: 1px solid #486582;  background-color: #3068A2; border-radius:
3px; padding: 4px 10px; }
    .call-to-action-container a.call-to-action-button { background-color: #3068A2; font-size:
14px; line-height: 1; padding: 0; margin: 0; color: #fff; font-weight: bold; font-family:
sans-serif; }

    /** The span around the inline task checkbox image */
    .diff-inline-task-overlay {
        display: inline-block;
        text-align: center;
        height: 1.5em;
        padding: 5px 0px 1px 5px;
        margin-right: 5px;
        /** Unfortunately, the negative margin-left is stripped out in gmail */
        margin-left: -5px;
    }

            @media handheld, only screen and (max-device-width: 480px) {
        div, a, p, td, th, li, dt, dd { -webkit-text-size-adjust: auto; }
        small, small a { -webkit-text-size-adjust: 90%; }

        td[id=email-wrapper-inner] { padding: 2px !important; }
        td[id=email-content-inner] { padding: 8px !important; }
        td[id="email-wrapper-inner"][class="thin"] > table { text-align: left !important;
width: 100% !important; }
        td[id=email-footer] { padding: 8px 12px !important; }
        div[class=email-indent] { margin: 8px 0px !important; }
        div[class=email-comment] { margin: 0 !important; }

        p[id=email-title-flavor] a { display: block; } /* puts the username and the action
on separate lines */
        p[id=email-permalink] { padding: 4px 0 0 0 !important; }

        table[id=email-actions] td { padding-top: 0 !important; }
        table[id=email-actions] td.right { text-align: right !important; }
        table[id=email-actions] .email-list-item { display: block; margin: 1em 0 !important;
word-wrap: normal !important; }
        span[class=email-list-divider] { display: none; }
    }



        </style>
    </head>
    <body style="font-family: Arial, FreeSans, Helvetica, sans-serif; font-size: 13px;
width: 100%; -webkit-font-smoothing: antialiased; background-color: #f0f0f0">
        <table id="email-wrapper" width="100%" cellspacing="0" cellpadding="0" border="0"
style="background-color: #f0f0f0">
            <tbody>
                <tr valign="middle">
                    <td id="email-wrapper-inner" style="font-size: 13px; padding: 20px;
text-align: center">
                        <table id="email-content" cellspacing="0" cellpadding="0" border="0"
style="font-family: Arial, FreeSans, Helvetica, sans-serif; width: 100%">
                            <tbody>
                                <tr valign="top">
                                    <td id="email-content-inner" align="left" style="font-family:
Arial, FreeSans, Helvetica, sans-serif; font-size: 13px; background-color: #fff; border: 1px
solid #bbb; padding: 20px; text-align: left">
                                        <table id="email-title" cellpadding="0" cellspacing="0"
border="0" width="100%">
                                            <tbody>
                                                <tr>
                                                    <td id="email-title-avatar" rowspan="2"
style="font-size: 13px; text-align: left; vertical-align: top; width: 48px; padding-right:
8px"> <img class="avatar" src="cid:avatar_4ebee911d98d59f9830697c1a9e1f260" border="0"
height="48" width="48" style="-ms-interpolation-mode: bicubic; border-radius: 3px" /> </td>
                                                    <td valign="top" style="font-size:
13px">
                                                        <div id="email-title-flavor" class="email-metadata"
style="margin: 0; padding: 0 0 4px 0; color: #505050">
                                                            <a href="    https://cwiki.apache.org/confluence/display/~sseifert
" style="color:#326ca6;text-decoration:none;; color: #326ca6; text-decoration: none">Stefan
Seifert</a> bearbeitete die Seite:
                                                        </div> </td>
                                                </tr>
                                                <tr>
                                                    <td valign="top" style="font-size:
13px"> <h2 id="email-title-heading" style="font-size: 16px; line-height: 20px; min-height:
20px; margin: 0; padding: 0"> <a href="https://cwiki.apache.org/confluence/display/SLING/Multitenancy+scenarios+and+use+cases"
style="color: #326ca6; text-decoration: none"> <img class="icon" src="cid:page-icon"
alt="" style="border: 0; padding: 0 5px 0 0; text-align: left; vertical-align: middle" />
<strong style="font-size:16px;line-height:20px;vertical-align:top;">Multitenancy scenarios
and use cases</strong> </a> </h2> </td>
                                                </tr>
                                            </tbody>
                                        </table>
                                        <div class="email-indent" style="margin: 8px 0
16px 0">
                                            <div class="email-diff">
                                                <div id="page-diffs" class="wiki-content">
                                                    <p class="diff-context-placeholder"
style="font-size: 13px">...</p>
                                                    <div class="table-wrap diff-block-context">
                                                        <table class="confluenceTable"
style="border-collapse: collapse; border: 1px solid #ddd;">
                                                            <tbody>
                                                                <tr>
                                                                    <th class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"> <p style="font-size:
13px">&quot;Virtual Hosting&quot; Scenario</p> </th>
                                                                    <th class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"> <p style="font-size:
13px">&quot;Massive Multi Site&quot; Scenario</p> </th>
                                                                </tr>
                                                                <tr>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px"><img class="confluence-embedded-image" width="500" src="/confluence/download/attachments/44993866/scenario_virtual_hosting.png?version=1&amp;modificationDate=1407836941357&amp;api=v2"
data-image-src="/confluence/download/attachments/44993866/scenario_virtual_hosting.png?version=1&amp;modificationDate=1407836941357&amp;api=v2"
/></td>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px"><img class="confluence-embedded-image" width="500" src="/confluence/download/attachments/44993866/scenario_massive_multi_site.png?version=1&amp;modificationDate=1407836982349&amp;api=v2"
data-image-src="/confluence/download/attachments/44993866/scenario_massive_multi_site.png?version=1&amp;modificationDate=1407836982349&amp;api=v2"
/></td>
                                                                </tr>
                                                                <tr>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px"> <p style="font-size: 13px"> <span>In this scenario
Sling is used for &quot;virtual hosting&quot;, that means hosting multiple tenants
that should be fully isolated.</span> </p> <p style="font-size: 13px"> <span>The
main goal according to the wikipedia definition is cost saving, that means instead of a single
sling instance and the corresponding infrastructure for each tenant all tenants are hosted
in a shared instance. There is no need for content sharing.</span> </p> <p
style="font-size: 13px"> <span>Usually the users of each tenant are distinct from
each other.</span> </p> </td>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px"> <p style="font-size: 13px"> <span>In this scenario
the whole instance is used by one corporation which has the need to host a huge number of
sites (e.g. 100 or 1,000 or more sites) in a single instance.</span> </p> <p
style="font-size: 13px"> <span>Besides cost saving of having a single instance, additional
goals are the support of content sharing. Although there are some users that have only access
to a single site, there are plenty of users that can have access to multiple sites (read/write
or only read).</span> </p> <p style="font-size: 13px"> <span>To structure
the huge number of sites a hierarchy of regions and subregions is used.</span> </p>
</td>
                                                                </tr>
                                                            </tbody>
                                                        </table>
                                                    </div>
                                                    <p class="diff-block-context" style="font-size:
13px">&nbsp;</p>
                                                    <h2 id="Multitenancyscenariosandusecases-Usecases/requirements"
class="diff-block-target diff-block-context"> <span class="diff-html-changed" id="changed-diff-0"
style="background-color: #d6f0ff;">Use cases </span><span class="diff-html-added"
id="added-diff-0" style="font-size: 100%; background-color: #ddfade;">/ requirements</span>
</h2>
                                                    <div class="table-wrap diff-block-target
diff-block-context">
                                                        <table class="confluenceTable"
style="border-collapse: collapse; border: 1px solid #ddd;">
                                                            <tbody>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px">Topic<span class="diff-html-added"
id="added-diff-1" style="font-size: 100%; background-color: #ddfade;">/Scenario</span></th>
                                                                    <th class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"><span>&quot;Virtual
Hosting&quot; Scenario</span></th>
                                                                    <th class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"><span>&quot;Massive
Multi Site&quot; Scenario</span></th>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"> <h4 id="Multitenancyscenariosandusecases-Tenantdefinition">Tenant
definition</h4> </th>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Tenants are defined centrally and up-front</li>
                                                                            <li style="font-size:
13px">Tenants are completely isolated from each other</li>
                                                                            <li style="font-size:
13px">A flat list of tenants is acceptable</li>
                                                                        </ul> </td>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Tenants are defined implicitly by the content structuring in regions and sites</li>
                                                                            <li style="font-size:
13px">It is required to have &quot;nested tenants&quot; with some sort of inheritance</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"> <h4 id="Multitenancyscenariosandusecases-Content">Content</h4>
</th>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">A user can access only the content of his tenant, he is not able to see any content
of other tenants. Inside his tenant, ACLs may prevent him from reading or writing some of
the tenants content.</li>
                                                                        </ul> </td>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">A user can read and write all content of the sites/regions he has access to (he can
have more read access than write access).</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px">i18n</th>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Tenants must be able to overlay the Internationalization so that they can provide
and use their own translations</li>
                                                                        </ul> </td>
                                                                    <td class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px"> <span>It has to be possible to overlay translations per region or site.</span>
</li>
                                                                            <li style="font-size:
13px"> <span>Sometimes translations to a foreign language can be shared between regions/sites,
although this is limited due to different variants of the same language in different countries</span>
</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px"> <h4 id="Multitenancyscenariosandusecases-Scripts">Scripts</h4>
</th>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Developers of the tenant can upload their own scripts with custom code to the instance.
Inside the tenant only the custom scripts and the global ones can be used, no scripts of other
tenants.</li>
                                                                            <li style="font-size:
13px">It is possible to overlay scripts provided globally with tenant-specific ones. It
is possible to overlay both scripts at /libs and at /apps.</li>
                                                                        </ul> </td>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">The global scripts provided by applications can be used in all sites and regions.
Although it is possible that some custom scripts are developed specific for a region or site,
it is not important to hide this extensions from other sites/regions - they may wish to use
them as well.</li>
                                                                            <li style="font-size:
13px">Overlaying scripts is only used to overlay OOTB components from /libs with specific
ones at /apps.</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px">Bundles</th>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Bundles are deployed globally, all tenants can use them</li>
                                                                            <li style="font-size:
13px">The tenant has the need to adapt certain configuration settings for his tenant -
this configuration is used only for his content and scripts.</li>
                                                                        </ul> </td>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Bundles are deployed globally, all regions and sites can use them</li>
                                                                            <li style="font-size:
13px">It may be required to adapt certain configuration settings per region and/or site</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px">Security</th>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Usage of admin session in code is problematic, because it gives access to all custom
scripts <strong>and all content</strong> of other tenants</li>
                                                                            <li style="font-size:
13px">All code uploaded by tenants has to be considered potentially malicious, the tenants
do not trust each other</li>
                                                                            <li style="font-size:
13px">A &quot;Tenant Admin&quot; user concept is required</li>
                                                                        </ul> </td>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">Usage of admin session is not problematic, because all code is maintained and governed
centrally</li>
                                                                        </ul> </td>
                                                                </tr>
                                                                <tr>
                                                                    <th colspan="1" class="confluenceTh"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;background-color: #F0F0F0; font-weight: bold;; font-size: 13px">Configuration</th>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">It is required to be able to adapt certain configuration settings on a tenant level</li>
                                                                            <li style="font-size:
13px">It may be required to to define separate configuration for different sites of a tenant
as well</li>
                                                                        </ul> </td>
                                                                    <td colspan="1" class="confluenceTd"
style="border: 1px solid #DDD; padding: 5px 7px; min-width: 0.6em; text-align: left; vertical-align:
top;; font-size: 13px">
                                                                        <ul>
                                                                            <li style="font-size:
13px">It is required to support configurations on multiple levels - globally, regions,
sub-regions, sites</li>
                                                                            <li style="font-size:
13px">Configuration inheritance between the levels is required</li>
                                                                            <li style="font-size:
13px">Access to the different configuration levels can be controlled by ACLs</li>
                                                                        </ul> </td>
                                                                </tr>
                                                            </tbody>
                                                        </table>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <table id="email-actions" class="email-metadata"
cellspacing="0" cellpadding="0" border="0" width="100%" style="border-top: 1px solid #bbb;
color: #505050; margin: 8px 0 0 0; padding: 0; color: #505050">
                                            <tbody>
                                                <tr>
                                                    <td class="left" valign="top" style="font-size:
13px; padding-top: 8px; max-width: 45%; text-align: left"> <span class="email-list-item"><a
href="https://cwiki.apache.org/confluence/display/SLING/Multitenancy+scenarios+and+use+cases"
style="color: #326ca6; text-decoration: none">Online anzeigen</a> </span> <span
class="email-list-divider" style="color: #505050; padding: 0 0.350em">&middot;</span>
<span class="email-list-item"><a href="https://cwiki.apache.org/confluence/plugins/likes/like.action?contentId=44993866"
style="color: #326ca6; text-decoration: none">Gef&auml;llt mir</a> </span>
<span class="email-list-divider" style="color: #505050; padding: 0 0.350em">&middot;</span>
<span class="email-list-item"><a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=44993866&amp;revisedVersion=7&amp;originalVersion=6"
style="color: #326ca6; text-decoration: none">&Auml;nderungen anzeigen</a> </span>
<span class="email-list-divider" style="color: #505050; padding: 0 0.350em">&middot;</span>
<span class="email-list-item"><a href="https://cwiki.apache.org/confluence/display/SLING/Multitenancy+scenarios+and+use+cases?showComments=true&amp;showCommentArea=true#addcomment"
style="color: #326ca6; text-decoration: none">Kommentar hinzuf&uuml;gen</a> </span>
</td>
                                                    <td class="right" width="50%" valign="top"
style="font-size: 13px; padding-top: 8px; text-align: right"> <span class="email-list-item"><a
href="https://cwiki.apache.org/confluence/users/removespacenotification.action?spaceKey=SLING"
style="color: #326ca6; text-decoration: none">&Uuml;berwachung des Bereichs beenden</a>
</span> <span class="email-list-divider" style="color: #505050; padding: 0 0.350em">&middot;</span>
<span class="email-list-item"><a href="https://cwiki.apache.org/confluence/users/editmyemailsettings.action"
style="color: #326ca6; text-decoration: none">Benachrichtigungen verwalten</a> </span>
</td>
                                                </tr>
                                            </tbody>
                                        </table> </td>
                                </tr>
                            </tbody>
                        </table> </td>
                </tr>
                <tr>
                    <td id="email-footer" align="center" style="font-size: 13px; padding:
0 16px 32px 16px; margin: 0"> <small style="font-size: 11px"> Diese Nachricht wurde
von <a class="email-footer-link" style="color:#505050;font-size:11px;text-decoration:none;;
color: #326ca6; text-decoration: none; color: #505050; font-size: 11px" href="http://www.atlassian.com/software/confluence">Atlassian
Confluence</a> 5.0.3, <a class="email-footer-link" style="color:#505050;font-size:11px;text-decoration:none;;
color: #326ca6; text-decoration: none; color: #505050; font-size: 11px" href="http://www.atlassian.com/software/confluence/overview/team-collaboration-software?utm_source=email-footer">der
Kollaborationssoftware f&uuml;r Teams</a>, gesendet </small> </td>
                </tr>
            </tbody>
        </table>
    </body>
</html>
Mime
View raw message