<!DOCTYPE HTML>
<html>
<head>
	<title>Getting started with OIOSAML.Net</title>
</head>

<body>

<h1>Getting started with OIOSAML.Net</h1>

<p>This is the codebase that the OIOSAML.Net components are built from.</p>

<h2>Resource links</h2>
<ul>
	<li><a href="https://digitaliser.dk/group/42063" target="_blank">Project maintenance</a></li>
	<li><a href="https://www.nuget.org/profiles/Digitaliseringsstyrelsen" target="_blank">Nuget packages (prefixed dk.nita.saml20)</a></li>
	<li><a href="https://github.com/digst/OIOSAML.Net" target="_blank">Code repository</a></li>
</ul>

<h2>Repository content</h2>
<ul>
	<li><b>build</b>: Contains script to create and publish NuGet packages</li>
	<li><b>certificates</b>: Certificates used for getting the demo sample up and running</li>
	<li><b>setup</b>: Setup scripts used for getting demo sample up and running</li>
	<li><b>src</b>: source code for the OIOSAML.Net framework</li>
	<li><b>developer notes.html</b>: Information relevant for developers of OIOSAML.Net</li>
	<li><b>Net SAML2 Service Provider Framework.docx</b>: General documentation on how to use OIOSAML.Net</li>
	<li><b>readme.html</b>: This file</li>
</ul>

<h2>Getting started</h2>
<p>
	The source code contains everything you need to get a demonstration environment up and running, federating with your own local Identity Provider, as well as directly against NemLog-in. 
</p>
<p><i>The full documentation on the project is available in the document 'Net SAML2 Service Provider Framework.docx'</i></p>
<p>	For a quick setup, you must do the following:</p>
<ul>
	<li>Run the script 'setup\setup_prerequisites.ps1' from an elevated powershell. This installs all required certificates and performs sslcert bindings to be able to host local websites using https</li>
	<li>Open the solution 'dk.nita.saml20.sln' in Visual Studio 2019 (Elevated mode) and build it (if you get errors on external dependencies, ensure nuget packages are being restored)</li>
	<li>Set the projects 'IdentityProviderDemo' and 'WebsiteDemo' as startup projects by right-clicking solution, select 'properties', selecting 'Multiple start projects'</li>
	<li>For the web projects, you must manually set the 'Start URL' that IIS express uses. You do this by:
		<ul>
			<li>right click project 'IdentityProviderDemo', select 'properties', select the tab 'Web', alter the 'Start Action' to the radio button 'Start URL', specifying 'https://oiosaml-demoidp.dk:20001'</li>
			<li>right click project 'WebsiteDemo', select 'properties', select the tab 'Web', alter the 'Start Action' to the radio button 'Start URL', specifying 'https://oiosaml-net.dk:20002'</li>
		</ul>
	<li>Run the solution which should start IIS express for the two websites</li>
</ul>
<p>This should start two browser windows, one for the demo idp ('IdentityProviderDemo'), and one for the service provider ('WebsiteDemo'). <br>
On the service provider you should now be able to log in using either the demo idp or NemLog-in, by selecting the identity provider in the list of identity providers<br>
If you choose NemLog-in, you must use an certificate employee certificate from the <a href="https://test-nemlog-in.dk/testportal/" target="_blank">NemLog-In testportal</a><br>
If you choose the local demo idp, you log in with a username/password with one of the users listed in the web.config file for the demo idp under the 'demoIdp' section</p>

</body>
</html>