<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="TR" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">I have an API provisioned on APIMAN with &nbsp;Keycloak OAuth Policy and CORS Policy (using APIMAN Plugins) . Onclient side, I get the JWT token from Keycloak and add authorization header to get request sent to APIMAN for my own API. Problem
 is&nbsp; that APIMAN rejects OPTIONS preflight with 401 Unauthorized with message &quot;OAuth2 'Authorization' header or 'access_token' query parameter must be provided.&quot;<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">I am using APIMAN 1.2.7_final . I applied workaround in the JIRA issue given below but it didn&#8217;t work for me. &nbsp;Does it work for both APIMAN&#8217;s own rest endpoints and my own API&#8217;s. I suppose it is not valid for the later one.<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><a href="http://lists.jboss.org/pipermail/apiman-user/2016-July/000727.html">http://lists.jboss.org/pipermail/apiman-user/2016-July/000727.html</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<o:p></o:p></p>
<p class="MsoNormal"><a href="https://issues.jboss.org/browse/APIMAN-1209">https://issues.jboss.org/browse/APIMAN-1209</a><o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><b>TOKEN REQUEST TO KEYCLOAK<o:p></o:p></b></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">General<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Request URL:http://localhost:8280/auth/realms/company/protocol/openid-connect/token<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Request Method:POST<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Status Code:200 OK<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Remote Address:127.0.0.1:8280<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">Response Headers<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Access-Control-Allow-Credentials:true<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Access-Control-Allow-Origin:http://localhost:8080<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Access-Control-Expose-Headers:Access-Control-Allow-Methods<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Connection:keep-alive<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Content-Length:3175<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Content-Type:application/json<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Date:Thu, 25 Aug 2016 07:22:59 GMT<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Server:WildFly/10<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">X-Powered-By:Undertow/1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">Request Headers<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept:*/*<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept-Encoding:gzip, deflate<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept-Language:tr-TR,tr;q=0.8,en-US;q=0.6,en;q=0.4<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Connection:keep-alive<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Content-Length:78<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Content-Type:application/x-www-form-urlencoded<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Host:localhost:8280<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Origin:http://localhost:8080<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Referer:http://localhost:8080/login-services/login.html<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Form Data<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">view source<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">view URL encoded<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">username:username<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">password:pasword<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">grant_type:password<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">client_id:company<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b>GET REQUEST TO API on APIMAN </b><b><span style="font-size:9.0pt"><o:p></o:p></span></b></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">General<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Request URL:http://localhost:8280/apiman-gateway/client/test-services-ws/1.0/getuser/<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Request Method:OPTIONS<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Status Code:<b>401 Unauthorized</b><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Remote Address:127.0.0.1:8280<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">Response Headers<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Connection:keep-alive<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Content-Type:application/json<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Date:Thu, 25 Aug 2016 07:22:59 GMT<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Server:WildFly/10<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Transfer-Encoding:chunked<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">X-Policy-Failure-Code:11005<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">X-Policy-Failure-Message:<b>OAuth2 'Authorization' header or 'access_token' query parameter must be provided</b>.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">X-Policy-Failure-Type:Authentication<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">X-Powered-By:Undertow/1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:9.0pt">Request Headers<o:p></o:p></span></b></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept:*/*<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept-Encoding:gzip, deflate, sdch<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Accept-Language:tr-TR,tr;q=0.8,en-US;q=0.6,en;q=0.4<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Access-Control-Request-Headers:authorization<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Access-Control-Request-Method:GET<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Connection:keep-alive<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Host:localhost:8280<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Origin:http://localhost:8080<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">Referer:http://localhost:8080/login-services/login.html<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:9.0pt">User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36<o:p></o:p></span></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">İyi Çalışmalar,<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR"><o:p>&nbsp;</o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">Melih Özdemirkan<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">AvivaSA Emeklilik ve Hayat A.Ş.<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">Kanal ve Entegrasyon Uygulamaları
<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">Danışman<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR"><a href="http://www.avivasa.com.tr/"><span style="color:#0563C1">www.avivasa.com.tr</span></a><o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">Saray Mah. Dr. Adnan Büyükdeniz Cad. No:12 34768<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;color:black;mso-fareast-language:TR">Ümraniye &#8211; İstanbul<o:p></o:p></span></b></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<table width="800" border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<table cellpadding="0" cellspacing="0" border="0">
<tbody>
<tr>
<td><a href="https://www.avivasa.com.tr/gelecegini-biriktirenler-kulubu-nedir"><img src="http://www.avivasa.com.tr/i/Assets/AvivaSA_Imza/images//gelecegini_01.png"></a></td>
<td><a href="https://www.avivasa.com.tr/gelecegini-biriktirenler-kulubu-nedir"><img src="http://www.avivasa.com.tr/i/Assets/AvivaSA_Imza/images//gelecegini_02.png"></a></td>
<td><a href="https://www.avivasa.com.tr/gelecegini-biriktirenler-kulubu-nedir"><img src="http://www.avivasa.com.tr/i/Assets/AvivaSA_Imza/images//gelecegini_03.png"></a></td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td><font size="1" face="Calibri">Bu e-postanin içerdigi bilgiler (ekleri dahil olmak üzere) gizlidir. Onayimiz olmaksizin üçüncü kisilere açiklanamaz. Bu mesajin gönderilmek istendigi kisi degilseniz, lütfen mesaji sisteminizden derhal siliniz. AvivaSA Emeklilik
 ve Hayat A.S. bu mesajin içerdigi bilgilerin dogrulugu veya eksiksiz oldugu konusunda bir garanti vermemektedir. Bu nedenle bilgilerin ne sekilde olursa olsun içeriginden, iletilmesinden, alinmasindan, saklanmasindan sorumlu degildir. Bu mesajin bilinen virüslere
 karsi kontrolleri AvivaSA Emeklilik ve Hayat A.S. tarafindan yapilmistir. Ancak internet iletisiminde güvenlik ve hatasiz gönderim garanti edilemeyeceginden, mesajin yerine ulasmamasi, geç ulasmasi, içeriginin bozulmasi ya da mesajin virüs tasimasi gibi problemler
 olusabilir. AvivaSA Emeklilik ve Hayat A.S. bu tip sorunlardan sorumlu tutulmaz. Bu mesajin içerigi yazarina ait olup AvivaSA Emeklilik ve Hayat A.S.'nin görüslerini içermeyebilir.<br>
<br>
The information contained in this e-mail (including any attachments) is confidential. It must not be disclosed to any person without our authority. If you are not the intended recipient, please delete it from your system immediately. AvivaSA Emeklilik ve Hayat
 A.S. makes no warranty as to the accuracy or completeness of any information contained in this message and hereby excludes any liability of any kind for the information contained therein or for the information transmission, reception, storage or use of such
 in any way whatsoever. This message is scanned for known viruses by AvivaSA Emeklilik ve Hayat A.S. But Internet communications cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, arrive late or contain viruses.
 The AvivaSA Emeklilik ve Hayat A.S. therefore does not accept liability for any errors or omissions in the context of this message which arise as a result of Internet transmission. Any opinions expressed in this message are those of the author and may not
 necessarily reflect the opinions of AvivaSA Emeklilik ve Hayat A.S. </font></td>
</tr>
</tbody>
</table>
</body>
</html>