diff --git a/src/STS/Controllers/ShibbolethController.cs b/src/STS/Controllers/ShibbolethController.cs index cbd0ac8f355e4b3294d9a274169e75ce419c5ac7..4431a73255a7e94ceae3248f752a6d988f6eb729 100644 --- a/src/STS/Controllers/ShibbolethController.cs +++ b/src/STS/Controllers/ShibbolethController.cs @@ -94,9 +94,9 @@ namespace Coscine.Api.STS.Controllers _rdfStoreConnector.RemoveMembershipData(userGraphName, organization); // Reverse lookup... - var eduPersonScopedAffiliation = info.Principal.FindAll(ShibbolethAttributeMapping.LabelMapping.FirstOrDefault(x => x.Value == "Entitlement").Key); + var eduPersonScopedAffiliation = info.Principal.FindAll(ShibbolethAttributeMapping.LabelMapping.FirstOrDefault(x => x.Value == "ScopedAffiliation").Key); var orgFromId = _rdfStoreConnector.GetOrgnizationWithIdentifier(identifier); - if (eduPersonScopedAffiliation.Any(x => x.Value.StartsWith("employee@"))) + if (eduPersonScopedAffiliation.Any(x => x.Value.StartsWith("employee@") || x.Value.StartsWith("staff@"))) { // Add membership information. _rdfStoreConnector.AddMemebershipData(userGraphName, organization); diff --git a/src/STS/Utils/ShibbolethAttributeMapping.cs b/src/STS/Utils/ShibbolethAttributeMapping.cs index 95f727e3668d6d0e0cd2261a6f6021e74aedd3b4..05035e01e01d0777b6d0756c292b07c194a0dc6b 100644 --- a/src/STS/Utils/ShibbolethAttributeMapping.cs +++ b/src/STS/Utils/ShibbolethAttributeMapping.cs @@ -17,7 +17,7 @@ namespace Coscine.Api.STS.Utils { "urn:oid:2.5.4.4", "Surname" }, { "urn:oid:1.3.6.1.4.1.5540.2.1.96", "Givenname" }, { "urn:oid:0.9.2342.19200300.100.1.3", "EmailAddress" }, - { "urn:oid:1.3.6.1.4.1.5923.1.1.1.9", "Entitlement" }, + { "urn:oid:1.3.6.1.4.1.5923.1.1.1.9", "ScopedAffiliation" }, { "urn:oid:2.5.4.10", "Organization" }, }; @@ -38,7 +38,7 @@ namespace Coscine.Api.STS.Utils user.EmailAddress = (string)value; break; case "urn:oid:1.3.6.1.4.1.5923.1.1.1.9": - if (user.Entitlement == null || !user.Entitlement.Contains("employee")) + if (user.Entitlement == null || !(user.Entitlement.Contains("employee") || user.Entitlement.Contains("staff"))) { user.Entitlement = (string)value; }