Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-1895

ManifoldCF SearchComponent plugin for enforcing ManifoldCF security at search time

    XMLWordPrintableJSON

    Details

      Description

      I've written an LCF SearchComponent which filters returned results based on access tokens provided by LCF's authority service. The component requires you to configure the appropriate authority service URL base, e.g.:

      <!-- LCF document security enforcement component -->
      <searchComponent name="lcfSecurity" class="LCFSecurityFilter">
      <str name="AuthorityServiceBaseURL">http://localhost:8080/lcf-authority-service</str>
      </searchComponent>

      Also required are the following schema.xml additions:

      <!-- Security fields -->
      <field name="allow_token_document" type="string" indexed="true" stored="false" multiValued="true"/>
      <field name="deny_token_document" type="string" indexed="true" stored="false" multiValued="true"/>
      <field name="allow_token_share" type="string" indexed="true" stored="false" multiValued="true"/>
      <field name="deny_token_share" type="string" indexed="true" stored="false" multiValued="true"/>

      Finally, to tie it into the standard request handler, it seems to need to run last:

      <requestHandler name="standard" class="solr.SearchHandler" default="true">
      <arr name="last-components">
      <str>lcfSecurity</str>
      </arr>
      ...

      I have not set a package for this code. Nor have I been able to get it reviewed by someone as conversant with Solr as I would prefer. It is my hope, however, that this module will become part of the standard Solr 1.5 suite of search components, since that would tie it in with LCF nicely.

        Attachments

        1. LCFSecurityFilter.java
          11 kB
          Karl Wright
        2. LCFSecurityFilter.java
          10 kB
          Karl Wright
        3. LCFSecurityFilter.java
          10 kB
          Karl Wright
        4. LCFSecurityFilter.java
          10 kB
          Karl Wright
        5. SOLR-1895.patch
          26 kB
          Koji Sekiguchi
        6. SOLR-1895.patch
          25 kB
          Karl Wright
        7. SOLR-1895.patch
          25 kB
          Karl Wright
        8. SOLR-1895.patch
          25 kB
          Koji Sekiguchi
        9. SOLR-1895.patch
          24 kB
          Koji Sekiguchi
        10. SOLR-1895.patch
          18 kB
          Karl Wright
        11. SOLR-1895-queries.patch
          61 kB
          Koji Sekiguchi
        12. SOLR-1895-queries.patch
          63 kB
          Karl Wright
        13. SOLR-1895-queries.patch
          63 kB
          Karl Wright
        14. SOLR-1895-queries.patch
          39 kB
          Karl Wright
        15. SOLR-1895-queries.patch
          39 kB
          Karl Wright
        16. SOLR-1895-service-plugin.patch
          33 kB
          Ryan McKinley
        17. SOLR-1895-service-plugin.patch
          33 kB
          Ryan McKinley

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                kwright@metacarta.com Karl Wright
              • Votes:
                2 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: