同一台電腦上的 OWIN Authorization 預設是相同的哦!

前陣子同事 Allen 在測試 Web API OWIN Authorization(可參考Web API bearer token 驗證),
在相同的NB上,使用某個 Web API bearer token,
到不同的 Web API Application 去驗證都是可以過的。

因為它們的生成是依據 machinekey , 預設值為 AutoGenerate 。

所以如果你要讓相同電腦中不同的 Web API Application也使用不相同的驗證,

則可以再加入 IsolateApps (在 system.web 區段中),如下,

<machineKey 
   validationKey="AutoGenerate,IsolateApps" 
   decryptionKey="AutoGenerate,IsolateApps"    
   validation="SHA1" 
   decryption="Auto" 
/>

那反過來,如果要讓不同的電腦使用相同的 bearer token 都可以驗證過的話,

就可以在 Web.config 使用相同的 machineKey , 

就跟「多個 Web Application 使用同一個 Forms Authentication」裡面的設定一樣哦!

使用時,要注意一下下哦!

 

參考資料

machineKey 項目 (ASP.NET 設定結構描述)

多個 Web Application 使用同一個 Forms Authentication

Decouple OWIN Authorization Server from Resource Server

Hi, 

亂馬客Blog已移到了 「亂馬客​ : Re:從零開始的軟體開發生活

請大家繼續支持 ^_^