[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"sanity-Ky1MnqhcM3o7F_6WY4RezWViJWkVOnE4KjEYqUvDlsI":3},{"data":4,"sourceMap":-1},{"info":5,"latest":13,"pinned":237},{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"descriptionText":10,"slug":11,"title":12},"2023-05-23T16:43:21Z","wp-tagcat-authentication","9HpbCsT2tq0xwozQfkc4ih","blogTag",null,{"current":12},"authentication",[14,64,105,135,165,204],{"_id":15,"author":16,"commentCount":28,"comments":29,"excerpt":30,"featureTag":10,"image":31,"publishedAt":34,"slug":35,"sponsored":10,"tags":37,"title":63},"wp-post-21695",[17],{"_id":18,"avatar":19,"name":24,"role":25,"slug":26},"wp-author-295",{"_type":20,"asset":21},"image",{"_ref":22,"_type":23},"image-d670f8093b43e483a52ba692d929578633f70eb5-1024x1024-jpg","reference","Eira May","B2B Editor",{"current":27},"emay",0,true,"Sam Scott, cofounder and CTO of Oso, joins the home team to talk about what makes authorization a challenge, the difference between authentication and authorization, and what zombies taught him about web development.",{"_type":20,"asset":32},{"_ref":33,"_type":23},"image-472725c034235a56301dc8caf0ed41b3d298c57a-1200x630-png","2023-02-21T05:40:00.000Z",{"current":36},"authorization-on-rails-ep-540",[38,40,44,49,53,58],{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":39,"title":12},{"current":12},{"_createdAt":6,"_id":41,"_rev":8,"_type":9,"_updatedAt":6,"slug":42,"title":43},"wp-tagcat-authorization",{"current":43},"authorization",{"_createdAt":6,"_id":45,"_rev":8,"_type":9,"_updatedAt":6,"slug":46,"title":48},"wp-tagcat-oauth2",{"current":47},"oauth2","OAuth2",{"_createdAt":6,"_id":50,"_rev":8,"_type":9,"_updatedAt":6,"slug":51,"title":52},"wp-tagcat-oso",{"current":52},"oso",{"_createdAt":6,"_id":54,"_rev":8,"_type":9,"_updatedAt":6,"slug":55,"title":57},"wp-tagcat-podcast",{"current":56},"podcast","The Stack Overflow Podcast",{"_createdAt":6,"_id":59,"_rev":8,"_type":9,"_updatedAt":6,"slug":60,"title":62},"wp-tagcat-the-stack-overflow-podcast",{"current":61},"the-stack-overflow-podcast","the stack overflow podcast","Authorization on Rails (Ep. 540)",{"_id":65,"author":66,"commentCount":75,"comments":29,"excerpt":76,"featureTag":10,"image":77,"publishedAt":80,"slug":81,"sponsored":10,"tags":83,"title":104},"wp-post-19921",[67],{"_id":68,"avatar":69,"name":72,"role":10,"slug":73},"wp-author-cap-19861",{"_type":20,"asset":70},{"_ref":71,"_type":23},"image-74ae88d47c8e7027aa12bdc96461f800ccf7828a-350x350-jpg","Dan Moore",{"current":74},"dan-moore",12,"OAuth2 is one of the most popular specifications for API authentication today, though wrapping your head around it can be a challenge. ",{"_type":20,"asset":78},{"_ref":79,"_type":23},"image-a1349e4f6b8193bcbc7034de176bd4cae9c4f370-2400x1260-jpg","2022-12-22T14:00:00.000Z",{"current":82},"the-complete-guide-to-protecting-your-apis-with-oauth2",[84,86,88,93,95,100],{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":85,"title":12},{"current":12},{"_createdAt":6,"_id":41,"_rev":8,"_type":9,"_updatedAt":6,"slug":87,"title":43},{"current":43},{"_createdAt":6,"_id":89,"_rev":8,"_type":9,"_updatedAt":6,"slug":90,"title":92},"wp-tagcat-code-for-a-living",{"current":91},"code-for-a-living","Code for a Living",{"_createdAt":6,"_id":45,"_rev":8,"_type":9,"_updatedAt":6,"slug":94,"title":48},{"current":47},{"_createdAt":6,"_id":96,"_rev":8,"_type":9,"_updatedAt":6,"slug":97,"title":99},"wp-tagcat-rest-api",{"current":98},"rest-api","rest api",{"_createdAt":6,"_id":101,"_rev":8,"_type":9,"_updatedAt":6,"slug":102,"title":103},"wp-tagcat-security",{"current":103},"security","The complete guide to protecting your APIs with OAuth2 (part 1)",{"_id":106,"author":107,"commentCount":112,"comments":29,"excerpt":113,"featureTag":10,"image":114,"publishedAt":117,"slug":118,"sponsored":10,"tags":120,"title":134},"wp-post-21154",[108],{"_id":68,"avatar":109,"name":72,"role":10,"slug":111},{"_type":20,"asset":110},{"_ref":71,"_type":23},{"current":74},2,"Prompting for a username and password is so 2005. Today, you can just prompt for a fingerprint. ",{"_type":20,"asset":115},{"_ref":116,"_type":23},"image-68f755796b9a7d63db6cb0b4a88a098c389ed567-2560x1344-jpg","2022-11-16T15:00:00.000Z",{"current":119},"biometric-authentication-for-web-devs",[121,123,127,129],{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":122,"title":12},{"current":12},{"_createdAt":6,"_id":124,"_rev":8,"_type":9,"_updatedAt":6,"slug":125,"title":126},"wp-tagcat-biometrics",{"current":126},"biometrics",{"_createdAt":6,"_id":89,"_rev":8,"_type":9,"_updatedAt":6,"slug":128,"title":92},{"current":91},{"_createdAt":6,"_id":130,"_rev":8,"_type":9,"_updatedAt":6,"slug":131,"title":133},"wp-tagcat-web-development",{"current":132},"web-development","web development","You can add biometric authentication to your webpage. Here's how.",{"_id":136,"author":137,"commentCount":142,"comments":29,"excerpt":143,"featureTag":10,"image":144,"publishedAt":147,"slug":148,"sponsored":10,"tags":150,"title":164},"wp-post-19945",[138],{"_id":68,"avatar":139,"name":72,"role":10,"slug":141},{"_type":20,"asset":140},{"_ref":71,"_type":23},{"current":74},3,"",{"_type":20,"asset":145},{"_ref":146,"_type":23},"image-223a23106216b957281b27f58063f4df5d16a780-2400x1260-jpg","2022-04-14T14:00:00.000Z",{"current":149},"the-authorization-code-grant-in-excruciating-detail",[151,156,158,160,162],{"_createdAt":6,"_id":152,"_rev":8,"_type":9,"_updatedAt":6,"slug":153,"title":155},"wp-tagcat-api",{"current":154},"api","API",{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":157,"title":12},{"current":12},{"_createdAt":6,"_id":41,"_rev":8,"_type":9,"_updatedAt":6,"slug":159,"title":43},{"current":43},{"_createdAt":6,"_id":89,"_rev":8,"_type":9,"_updatedAt":6,"slug":161,"title":92},{"current":91},{"_createdAt":6,"_id":45,"_rev":8,"_type":9,"_updatedAt":6,"slug":163,"title":48},{"current":47},"The Authorization Code grant (in excruciating detail) Part 2 of 2",{"_id":166,"author":167,"commentCount":184,"comments":29,"excerpt":185,"featureTag":10,"image":186,"publishedAt":189,"slug":190,"sponsored":10,"tags":192,"title":203},"wp-post-18885",[168,176],{"_id":169,"avatar":170,"name":173,"role":10,"slug":174},"wp-author-cap-18888",{"_type":20,"asset":171},{"_ref":172,"_type":23},"image-307de27391b1ad4ed8dbfc486af1264fa71234a3-40x40-jpg","Sam Scott",{"current":175},"sam-scott",{"_id":177,"avatar":178,"name":181,"role":10,"slug":182},"wp-author-cap-18890",{"_type":20,"asset":179},{"_ref":180,"_type":23},"image-6c2d29e8136405cb7d8a4a2bf6e8c4babc481c5b-40x40-jpg","Graham Neray",{"current":183},"graham-neray",20,"If you have a REST API accessible on the internet, you're going to need to secure it. Here's the best practices on how to do that. ",{"_type":20,"asset":187},{"_ref":188,"_type":23},"image-a559131b0f87f7dd3756059be29364f15eeefde2-2400x1260-jpg","2021-10-06T14:52:18.000Z",{"current":191},"best-practices-for-authentication-and-authorization-for-rest-apis",[193,195,197,199,201],{"_createdAt":6,"_id":152,"_rev":8,"_type":9,"_updatedAt":6,"slug":194,"title":155},{"current":154},{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":196,"title":12},{"current":12},{"_createdAt":6,"_id":41,"_rev":8,"_type":9,"_updatedAt":6,"slug":198,"title":43},{"current":43},{"_createdAt":6,"_id":89,"_rev":8,"_type":9,"_updatedAt":6,"slug":200,"title":92},{"current":91},{"_createdAt":6,"_id":96,"_rev":8,"_type":9,"_updatedAt":6,"slug":202,"title":99},{"current":98},"Best practices for REST API security: Authentication and authorization",{"_id":205,"author":206,"commentCount":215,"comments":29,"excerpt":216,"featureTag":10,"image":217,"publishedAt":220,"slug":221,"sponsored":10,"tags":223,"title":236},"wp-post-18687",[207],{"_id":208,"avatar":209,"name":212,"role":10,"slug":213},"wp-author-226",{"_type":20,"asset":210},{"_ref":211,"_type":23},"image-56688f6337dd0a96034dfc998cdecc7810597d81-1024x1024-png","Ryan Donovan",{"current":214},"rdonovan",39,"Magic links get you in the door safer than passwords. ",{"_type":20,"asset":218},{"_ref":219,"_type":23},"image-6f6591e18674cee2e570564767f3f8ca14c19158-3000x1575-png","2021-08-24T04:40:00.000Z",{"current":222},"podcast-369-passwords-are-dead-long-live-the-new-authentication-flows",[224,226,230,232,234],{"_createdAt":6,"_id":7,"_rev":8,"_type":9,"_updatedAt":6,"slug":225,"title":12},{"current":12},{"_createdAt":6,"_id":227,"_rev":8,"_type":9,"_updatedAt":6,"slug":228,"title":229},"wp-tagcat-passwords",{"current":229},"passwords",{"_createdAt":6,"_id":101,"_rev":8,"_type":9,"_updatedAt":6,"slug":231,"title":103},{"current":103},{"_createdAt":6,"_id":54,"_rev":8,"_type":9,"_updatedAt":6,"slug":233,"title":57},{"current":56},{"_createdAt":6,"_id":59,"_rev":8,"_type":9,"_updatedAt":6,"slug":235,"title":62},{"current":61},"Podcast 369: Passwords are dead! Long live the new authentication flows.",[]]