<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>oauth &#8211; Smals Research</title>
	<atom:link href="https://www.smalsresearch.be/tag/oauth/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.smalsresearch.be</link>
	<description></description>
	<lastBuildDate>Thu, 09 Apr 2026 12:05:41 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.smalsresearch.be/wp-content/uploads/2026/01/cropped-cropped-Smals_Research-32x32.png</url>
	<title>oauth &#8211; Smals Research</title>
	<link>https://www.smalsresearch.be</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Rest &#038; IAM – Part 3&#160;: SCIM</title>
		<link>https://www.smalsresearch.be/rest-iam-part-3-scim/</link>
					<comments>https://www.smalsresearch.be/rest-iam-part-3-scim/#comments</comments>
		
		<dc:creator><![CDATA[Bob Lannoy]]></dc:creator>
		<pubDate>Wed, 16 Nov 2011 15:40:11 +0000</pubDate>
				<category><![CDATA[Blog post]]></category>
		<category><![CDATA[identity]]></category>
		<category><![CDATA[oauth]]></category>
		<category><![CDATA[provisioning]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[scim]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[standards]]></category>
		<guid isPermaLink="false">/?p=3473</guid>

					<description><![CDATA[In mijn twee vorige posts (deel 1 en deel 2) heb ik gesproken over de opkomst van een REST-gebaseerde aanpak in Identity Management. Grote internetspelers gaan volop voor een naar hun zeggen &#8220;eenvoudige en lichte&#8221; aanpak, getuige daarvan het massale gebruik van OAuth. Je kan echter pas iemand authentiseren of toelaten tot je systeem als [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>In mijn twee vorige posts (<a title="Groei van REST &amp; JSON standaarden voor Identity Management" href="/?p=2327" target="_blank">deel 1</a> en <a title="Rest &amp; IAM – Part 2&nbsp;: OAuth" href="/?p=2624" target="_blank">deel 2</a>) heb ik gesproken over de opkomst van een REST-gebaseerde aanpak in Identity Management. Grote internetspelers gaan volop voor een naar hun zeggen &#8220;eenvoudige en lichte&#8221; aanpak, getuige daarvan het massale gebruik van OAuth.</p>
<p>Je kan echter pas iemand authentiseren of toelaten tot je systeem als die gekend is met de nodige set gegevens. Het toevoegen van een gebruiker aan een identiteitsbeheeroplossing heet &#8220;provisioning&#8221;. <span id="more-3473"></span></p>
<p>In organisaties zijn de gegevens van een gebruiker sterk verspreid in verschillende systemen: gegevens in de personeelsdatabase, mailsysteem, Windows-domein, adresboek, &#8230; Een provisioneringsoplossing zal deze gegevens centraal beheren zodat het toevoegen, wijzigen en het verwijderen van een gebruiker in die verschillende bronnen de nodige operaties zal uitvoeren. De aanpak van dergelijke tools was echter steeds propriëtair. Meerdere provisioneringstools konden moeilijk met elkaar praten. De grote droom van standardisatie en interoperabiliteit werd gerealiseerd in 2003 met <a title="Service Provisioning Markup Language" href="https://inventory.smals-mvm.be/Onderzoek/g1/108-RCH.html" target="_blank">SPML</a> (<em>Service Provisioning Markup Language</em>), dat in 2006 aan zijn 2de versie toe was.</p>
<p>Het is echter bij een droom gebleven. SPML is vrij complex en werd vrijwel niet geïmplementeerd in tools. In het voorjaar is er een kaper op de kust verschenen: <a href="https://www.simplecloud.info/" target="_blank">SCIM</a> (<em>Simple Cloud Identity Management</em>), met als belangrijk ingrediënt (hoe kan het ook anders): <em>cloud</em>.</p>
<p>In omgevingen die meer gedistribueerd zijn met toepassingen en services &#8220;in the cloud&#8221; bij verschillende leveranciers, wordt het provisioneren van gebruikers vanuit de organisatie een moeilijke klus. Niemand wil zijn honderden gebruikers manueel gaan ingeven bij de SaaS-leverancier. En ja, er zijn integratiemogelijkheden tussen je eigen omgeving en de SaaS-provider maar die zijn specifiek per leverancier.</p>
<p>Daarom wil men via het SCIM provisioneringsprotocol, het provisioneringsproces automatiseren en standardiseren. Grote spelers als Google en Salesforce zijn de drijvende kracht achter deze standaardisatie.</p>
<p>De standaard wil CRUD (Create, Read, Update en Delete) operaties bieden op gebruikersaccounts en dit volgens een beperkt aantal <a href="https://www.simplecloud.info/specs/draft-scim-scenarios-04.html">scenario&#8217;s</a>. Als onderliggend protocol zal men zich op REST baseren met een JSON-payload. Die payload bevat een inhoud volgens een uitbreidbaar schema, zodat specifieke attributen ook kunnen opgenomen worden.</p>
<p>Een klein voorbeeld uit de draft specificatie van een Request die een gebruiker aanmaakt:</p>
<pre>POST /User  HTTP/1.1
Host: example.com
Accept: application/json
Authorization: Bearer h480djs93hd8
Content-Length: ...

{
  "schemas":["urn:scim:schemas:core:1.0"],
  "userName":"bjensen",
  "externalId":"bjensen",
  "name":{
    "formatted":"Ms. Barbara J Jensen III",
    "familyName":"Jensen",
    "givenName":"Barbara"
  }
}</pre>
<p>Merk op dat men als authenticatietoken gebruikt maakt van OAuth.</p>
<p>Naast de JSON-representatie wordt er ook gewerkt aan een representatie van het schema in <a href="https://inventory.smals-mvm.be/Onderzoek/g1/158-DSY.html" target="_blank">SAML</a>-attributen. Dit laat toe bij gebruik van SAML-tokens voor Single Sign-On om de gebruiker onmiddellijk te provisioneren indien deze nog niet zou bestaan.</p>
<p>Ondanks het feit dat SCIM nog geen standaard is, bestaan er wel al een paar <a href="https://code.google.com/p/scim/wiki/Implementations" target="_blank">implementaties</a>.</p>
<p>Met OAuth en SCIM zijn twee aspecten van Identity Management vertaald naar een REST-architectuur, nl. authenticatie en provisioning. Rest ons nog autorisaties waar momenteel <a title="XACML" href="https://inventory.smals-mvm.be/Onderzoek/g1/188-DSY.html" target="_blank">XACML</a> de meest genoemde standaard is. Het valt nog af te wachten of hiervoor ook een alternatief op de proppen komt.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.smalsresearch.be/rest-iam-part-3-scim/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Rest &#038; IAM &#8211; Part 2&#160;: OAuth</title>
		<link>https://www.smalsresearch.be/rest-iam-part-2-oauth/</link>
					<comments>https://www.smalsresearch.be/rest-iam-part-2-oauth/#comments</comments>
		
		<dc:creator><![CDATA[Bob Lannoy]]></dc:creator>
		<pubDate>Thu, 04 Aug 2011 14:00:01 +0000</pubDate>
				<category><![CDATA[Blog post]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[authorization]]></category>
		<category><![CDATA[identity]]></category>
		<category><![CDATA[oauth]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[standards]]></category>
		<guid isPermaLink="false">http://blogs.smals-mvm.be/research/?p=2624</guid>

					<description><![CDATA[In een vorige post werd de opgang van Identity &#38; Access Management standaarden in REST-architecturen kort vermeld. In deze post bespreken we kort één van deze specificaties, namelijk OAuth. OAuth is een systeem dat toelaat om aan derde partijen een sleutel te geven waarmee ze op een site toegang krijgen tot jouw gegevens.  Typische voorbeelden [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img decoding="async" class="size-thumbnail wp-image-2625 alignright" style="vertical-align: top;" title="OAuth logo" src="/wp-content/uploads/2011/07/OAuth-Shine-300x298-150x150.png" alt="OAuth logo" width="150" height="150" srcset="https://www.smalsresearch.be/wp-content/uploads/2011/07/OAuth-Shine-300x298-150x150.png 150w, https://www.smalsresearch.be/wp-content/uploads/2011/07/OAuth-Shine-300x298.png 300w" sizes="(max-width: 150px) 100vw, 150px" />In een <a title="Groei van REST &amp; JSON standaarden voor Identity Management" href="/?p=2327" target="_blank">vorige post</a> werd de opgang van Identity &amp; Access Management standaarden in REST-architecturen kort vermeld. In deze post bespreken we kort één van deze specificaties, namelijk <a href="https://hueniverse.com/oauth/" target="_blank">OAuth</a>.</p>
<p>OAuth is een systeem dat toelaat om aan derde partijen een sleutel te geven waarmee ze op een site toegang krijgen tot jouw gegevens.  Typische voorbeelden zijn (web)toepassingen die toegang wensen tot je Facebook- of Twitter-gegevens.<br />
Je geeft deze toepassingen niet je gebruikersnaam en wachtwoord maar een token waarmee ze toegang verkrijgen. De geldigheid van dit token kan beperkt worden in scope en tijd. Je kan dit token ook &#8220;revoken&#8221;. Op Twitter is er bijvoorbeeld een pagina (in settings / Applications) waar de lijst met applicaties wordt getoond waarvoor er een token bestaat.</p>
<p><span id="more-2624"></span>Het principe van OAuth is vrij bekend aangezien het sterk lijkt op processen in federatiestandaarden zoals SAML en WS-Trust. Er zijn drie partijen: de <em>client</em>, de <em>resource owner</em> en de <em>server, </em>respectievelijk<em> user, consumer</em> en<em> Salesforce</em> in de figuur. De client is een stuk software of een dienst die toegang wenst tot resources op een server.</p>
<figure id="attachment_2629" aria-describedby="caption-attachment-2629" style="width: 150px" class="wp-caption alignright"><a href="/wp-content/uploads/2011/07/Oauth_dance.png.jpg"><img decoding="async" class="size-thumbnail wp-image-2629 " title="Oauth_dance.png" src="/wp-content/uploads/2011/07/Oauth_dance.png-150x150.jpg" alt="OAuth flow" width="150" height="150" /></a><figcaption id="caption-attachment-2629" class="wp-caption-text">Voorbeeld OAuth flow</figcaption></figure>
<p>Kort gezegd werkt het als volgt, meer uitleg op de <a href="https://hueniverse.com/2007/10/beginners-guide-to-oauth-part-ii-protocol-workflow/" target="_blank">OAuth website</a>:</p>
<ul>
<li>De <em>server</em> is bekend met de service die de <em>client</em> aanbiedt. De <em>client</em> dient zich op voorhand te registeren (ze beschikken over een &#8220;shared secret&#8221;).</li>
<li>Als de <em>client</em> toegang wil tot bepaalde resources dient hij gebruik te maken van een <em>access token</em>.</li>
<li>Dit <em>access token</em> wordt verkregen door de <em>resource owner</em> zich te laten aanmelden op de <em>server</em>. Hierdoor krijgt de client eerst een <em>request token</em> dat na validatie wordt ingewisseld voor een <em>access token</em>.</li>
<li>Met dit <em>access token</em> kan de <em>client</em> dan de toegelaten resources opvragen, binnen de voorwaarden van de <em>resource owner</em>.</li>
</ul>
<p>Merk op dat er directe communicatie is tussen de <em>client </em>en de <em>server</em> voor het verkrijgen van het access token. OAuth is ook niet beperkt tot implementaties voor pure webapplicaties. Het kan ook dienen voor clients op mobiele toestellen of servers die toegang wensen tot bepaalde resources of gegevens.</p>
<p>OAuth heeft reeds heel wat historiek achter zich. Het is ontstaan uit de <a href="https://openid.net" target="_blank">OpenID</a> community en is als versie 1.0a geïmplementeerd bij een aantal grote spelers (zoals Twitter). OAuth v1 heeft echter met veel kritiek te maken, met name qua complexiteit. Door het gebruik van digitale handtekeningen is het systeem zeer implementatiegevoelig aan de client-zijde. Aangezien OAuth door velen in de REST-wereld werd gezien als een licht alternatief voor &#8216;zware&#8217; XML-Security implementaties, viel dit niet in goede aarde.</p>
<p>Daarom werd <a href="https://hueniverse.com/2010/05/introducing-oauth-2-0/">OAuth 2.0</a> een volledige herziening van de specificatie en ook ingediend bij IETF ter standaardisatie. Er is hierom echter weer kritiek omdat men op veiligheidsvlak een aantal toegevingen doet om de complexiteit te verlagen. Indien er geen gebruik gemaakt wordt van SSL zijn er serieuze veiligheidsrisico&#8217;s. Het gebruik van handtekeningen is nog steeds mogelijk maar niet verplicht.</p>
<p><a href="https://code.google.com/apis/accounts/docs/OAuth2.html" target="_blank">Google</a> en <a href="https://developers.facebook.com/docs/authentication/" target="_blank">Facebook</a> maken momenteel gebruik van OAuth 2.0 voor de toegang tot hun APIs.</p>
<p>Zijn de andere federatiestandaarden dan nutteloos? Neen, OAuth kan je ook perfect gebruiken in combinatie met standaarden zoals SAML, zoals <a href="https://blog.independentid.com/2011/04/oauth-does-it-replace-federation.html" target="_blank">hier</a> wordt aangetoond.</p>
<p>Moeten we nu met zijn allen overstappen op OAuth? Natuurlijk niet, maar het is wel belangrijk te weten wat voor standaarden opgang maken bij de grote internetspelers.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.smalsresearch.be/rest-iam-part-2-oauth/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
