Skip to content
Snippets Groups Projects
Commit 9a453d3c authored by Benedikt Heinrichs's avatar Benedikt Heinrichs Committed by Marcel Nellesen
Browse files

Update: Add Organization on user import

parent d32a5035
No related branches found
No related tags found
2 merge requests!6Product/1149 dfnaai,!5Sprint/2021 01
...@@ -25,12 +25,16 @@ ...@@ -25,12 +25,16 @@
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="Coscine.Database" publicKeyToken="767d77427707b70a" culture="neutral" /> <assemblyIdentity name="Coscine.Database" publicKeyToken="767d77427707b70a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.25.1.0" newVersion="1.25.1.0" /> <bindingRedirect oldVersion="0.0.0.0-1.28.0.0" newVersion="1.28.0.0" />
</dependentAssembly> </dependentAssembly>
<dependentAssembly> <dependentAssembly>
<assemblyIdentity name="linq2db" publicKeyToken="e41013125f9e410a" culture="neutral" /> <assemblyIdentity name="linq2db" publicKeyToken="e41013125f9e410a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" /> <bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" />
</dependentAssembly> </dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Coscine.Database.T4" publicKeyToken="84b4c404a0696261" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.28.0.0" newVersion="1.28.0.0" />
</dependentAssembly>
</assemblyBinding> </assemblyBinding>
</runtime> </runtime>
</configuration> </configuration>
\ No newline at end of file
...@@ -18,6 +18,12 @@ namespace Coscine.UserImporter ...@@ -18,6 +18,12 @@ namespace Coscine.UserImporter
{ {
public class Program public class Program
{ {
private static Dictionary<string, string> RORMap = new Dictionary<string, string>()
{
{ "https://ror.org/04xfq0f34", "https://login.rz.rwth-aachen.de/shibboleth" },
};
public static void Main(string[] args) public static void Main(string[] args)
{ {
var configuration = new ConsulConfiguration(); var configuration = new ConsulConfiguration();
...@@ -91,7 +97,7 @@ namespace Coscine.UserImporter ...@@ -91,7 +97,7 @@ namespace Coscine.UserImporter
try try
{ {
var user = CreateUserObjectFromGraph(graphImpl, entry.Subject); var user = CreateUserObjectFromGraph(graphImpl, entry.Subject);
StoreUser(configuration, externalIdModel, userModel, shib, triple.Object.ToString(), user); StoreUser(configuration, externalIdModel, userModel, shib, triple.Object.ToString(), user, absoluteUri);
createdUsers++; createdUsers++;
if (createdUsers%100 == 0) if (createdUsers%100 == 0)
{ {
...@@ -112,13 +118,14 @@ namespace Coscine.UserImporter ...@@ -112,13 +118,14 @@ namespace Coscine.UserImporter
} }
} }
private static void StoreUser(IConfiguration configuration, ExternalIdModel externalIdModel, UserModel userModel, ExternalAuthenticator shib, string externalId, User user) private static void StoreUser(IConfiguration configuration, ExternalIdModel externalIdModel, UserModel userModel, ExternalAuthenticator shib, string externalId, User user, string absoluteUri)
{ {
userModel.Insert(user); userModel.Insert(user);
externalIdModel.Insert(new ExternalId externalIdModel.Insert(new ExternalId
{ {
ExternalIdColumn = externalId, ExternalIdColumn = externalId,
ExternalAuthenticatorId = shib.Id, ExternalAuthenticatorId = shib.Id,
Organization = RORMap.ContainsKey(absoluteUri) ? RORMap[absoluteUri] : "",
UserId = user.Id UserId = user.Id
}); });
ADHandler.AddUser(user, configuration); ADHandler.AddUser(user, configuration);
......
...@@ -47,11 +47,11 @@ ...@@ -47,11 +47,11 @@
<Reference Include="Coscine.Configuration, Version=1.5.0.0, Culture=neutral, PublicKeyToken=ce3d7a32d7dc1e5a, processorArchitecture=MSIL"> <Reference Include="Coscine.Configuration, Version=1.5.0.0, Culture=neutral, PublicKeyToken=ce3d7a32d7dc1e5a, processorArchitecture=MSIL">
<HintPath>..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll</HintPath> <HintPath>..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll</HintPath>
</Reference> </Reference>
<Reference Include="Coscine.Database, Version=1.25.1.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL"> <Reference Include="Coscine.Database, Version=1.28.0.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL">
<HintPath>..\packages\Coscine.Database.1.25.1\lib\net461\Coscine.Database.dll</HintPath> <HintPath>..\packages\Coscine.Database.1.28.0-topic-1278-dfnaa0004\lib\net461\Coscine.Database.dll</HintPath>
</Reference> </Reference>
<Reference Include="Coscine.Database.T4, Version=1.25.1.0, Culture=neutral, PublicKeyToken=84b4c404a0696261, processorArchitecture=MSIL"> <Reference Include="Coscine.Database.T4, Version=1.28.0.0, Culture=neutral, PublicKeyToken=84b4c404a0696261, processorArchitecture=MSIL">
<HintPath>..\packages\Coscine.Database.1.25.1\lib\net461\Coscine.Database.T4.dll</HintPath> <HintPath>..\packages\Coscine.Database.1.28.0-topic-1278-dfnaa0004\lib\net461\Coscine.Database.T4.dll</HintPath>
</Reference> </Reference>
<Reference Include="Coscine.Metadata, Version=1.3.2.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="Coscine.Metadata, Version=1.3.2.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Coscine.Metadata.1.3.2\lib\net461\Coscine.Metadata.dll</HintPath> <HintPath>..\packages\Coscine.Metadata.1.3.2\lib\net461\Coscine.Metadata.dll</HintPath>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<package id="Consul" version="0.7.2.6" targetFramework="net461" /> <package id="Consul" version="0.7.2.6" targetFramework="net461" />
<package id="Coscine.ActiveDirectory" version="1.3.0" targetFramework="net461" /> <package id="Coscine.ActiveDirectory" version="1.3.0" targetFramework="net461" />
<package id="Coscine.Configuration" version="1.5.0" targetFramework="net461" /> <package id="Coscine.Configuration" version="1.5.0" targetFramework="net461" />
<package id="Coscine.Database" version="1.25.1" targetFramework="net461" /> <package id="Coscine.Database" version="1.28.0-topic-1278-dfnaa0004" targetFramework="net461" />
<package id="Coscine.Metadata" version="1.3.2" targetFramework="net461" /> <package id="Coscine.Metadata" version="1.3.2" targetFramework="net461" />
<package id="dotNetRDF" version="2.5.0" targetFramework="net461" /> <package id="dotNetRDF" version="2.5.0" targetFramework="net461" />
<package id="dotNetRDF.Data.Virtuoso" version="2.5.0" targetFramework="net461" /> <package id="dotNetRDF.Data.Virtuoso" version="2.5.0" targetFramework="net461" />
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment