Giter Site home page Giter Site logo

Comments (13)

hannesaddec avatar hannesaddec commented on August 29, 2024

What kind of authentication are you referring to ? HTTP, Cookies, SSL, Shibboleth OpenID, CAS?

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

At least HTTP Basic Auth is used a lot, that would be a start. I take it that you need the ability to add credentials for a Resource URL? You could try to encode it in the URL like http://username:[email protected]/, not sure this will work in GHC, but also exposes creds via UI.

So, good point: could start adding optional user/password fields for a Resource.

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

Finally this feature will be implemented! Planned:

  • generic/extensible Resource Auth design
  • implementation for HTTP Basic Auth

Current thinking:

  • new column/field for Resource auth
  • auth field stores encrypted JSON structure
  • auth JSON structure identifies Auth Method and Data properties
  • Auth Method id drives implementation

Something like:

{
method: 'basicauth',
data: {
   username: 'rscuser',
   password: 'rscpasswd'
 }
}

The method id basicauth will direct the implementation to a BasicAuth class to use which fills in the proper headers etc.

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

Fixed via #259 , available on https://demo.geohealthcheck.org/

from geohealthcheck.

samperd avatar samperd commented on August 29, 2024

@justb4, thanks so much for considering this feature in the latest stantec sponsored development activity.

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

@samperd yes, you opened this a very long time ago! Does the current implementation work for you?

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

Re-opening: in some scenarios, e.g. WMS Editing, getting WMS metadata (Capabilities) is not applying auth headers when calling OWSLib WebMapService (or other OWSLib services).

Solution

Any Probe calling OWSLib Metadata should set (optional) auth headers via this e.g. call for WMS:

WebMapService(resource.url, version=version,
                             headers=self.get_request_headers())

Complications

This can currently only be applied to WMS, as other OWSLib services like WFS, TMS etc do not supply a headers parameter in their constructors. See this OWSLib issue

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

We are quite far, need to await Py2->Py3 migrate to use latest OWSLib with fixes for at WFS, CSW etc.

from geohealthcheck.

borrob avatar borrob commented on August 29, 2024

With the py3 migration fixed in #280: is there more to do for this issue?

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

We need to upgrade OWSLib from 0.17.0 to the latest version: https://github.com/geopython/OWSLib/releases (now 0.18.0), which should fix Resource auth for WFS and more (this issue) and some WFS3 fixes. Mainly quite some testing needed.

from geohealthcheck.

borrob avatar borrob commented on August 29, 2024

With PR #312 there is an update to OWSLib 0.19.

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

And now even to OWSLib 0.20.0. Want to first bring out 0.8.0 and quickly move to 0.8.1 for this one and related PRs.

from geohealthcheck.

justb4 avatar justb4 commented on August 29, 2024

Closing: via #333 : OWSLib is upgraded to 0.20.0, so Auth Headers should work with WFS and TMS as well. Please open specific issues for Auth problems/features.

from geohealthcheck.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.