So, has
thiss.io been developed and/or used with pyff's select as alias in
mind and, will pyff allow the alias on the /api/search endpoint? Maybe Scott
made it work as he needs select as in some of his deployments?
Still working on it...
What I can tell you is that if my pipeline has this
- select as ligo_approved:
- "https://login.ligo.org/idp/shibboleth"
- "https://shibbi.pki.itc.u-tokyo.ac.jp/idp/shibboleth"
- "https://orcid-saml-gateway.gw-astronomy.org/idp"
Then I can do a query like this:
curl -H 'Accept: application/json'
http://127.0.0.1:8080/entities/ligo_approved?query=kagra | python -m json.tool
and "find" the KAGRA IdP (second in the list above).
So my hope is that I can create from a thiss-js repository clone a second
discovery service that has/uses a SEARCH_URL that points to
http://127.0.0.1:8080/entities/ligo_approved
and thereby deliver a second discovery service with the limited set of IdPs.
Note that the URL
http://127.0.0.1:8080/entities/ligo_approved?query=kagra
is NOT using the search API calls. It is processed using the full pipeline
mechanism. So it is slightly slower, but that is not a problem for my use
case.
I don't know if Leif will extend pyFF so that the search API calls will
respect the alias.
So using the alias almost works...
The problem is that the JSON payloads returned from the API call and the
JSON returned from the alias/pipeline call are different.
The API call returns
[
{
"title":"KAGRA",
"descr":"KAGRA Large-scale Cryogenic Gravitational Wave Telescope
Project",
"entity_id":"https://shibbi.pki.itc.u-tokyo.ac.jp/idp/shibboleth",
"entityID":"https://shibbi.pki.itc.u-tokyo.ac.jp/idp/shibboleth",
"domains":"pki.itc.u-tokyo.ac.jp;itc.u-tokyo.ac.jp;u-tokyo.ac.jp;ac.jp",
"id":"{sha1}c24878218fd7873becb1ef44c68b513c69d168e5",
"scopes":"shibbi.pki.itc.u-tokyo.ac.jp",
"matched":"KAGRA",
"ddist":0
}
]
The alias/pipeline call returns
[
{
"title":"KAGRA",
"descr":"KAGRA Large-scale Cryogenic Gravitational Wave Telescope
Project",
"auth":"saml",
"entityID":"https://shibbi.pki.itc.u-tokyo.ac.jp/idp/shibboleth",
"type":"idp",
"hidden":"false",
"scope":"shibbi.pki.itc.u-tokyo.ac.jp",
"domain":"shibbi.pki.itc.u-tokyo.ac.jp",
"name_tag":"SHIBBI",
"entity_icon_url":{
"url":"https://shibbi.pki.itc.u-tokyo.ac.jp/SAML2/metadata/ui/KAGRA-logo-60x80.png",
"width":"80",
"height":"60"
}
}
]
The thiss-js code is looking in the payload for key 'entity_id', not
'entityID'.
Leif is this a limitation of thiss-js, or a bug in pyFF, or ?
Thanks,
Scott K