[{"data":1,"prerenderedAt":478},["ShallowReactive",2],{"article-openidconnect-proxy-authentication-required":3},{"article":4,"tags":279,"previous":320,"next":424},{"id":5,"title":6,"author":7,"body":8,"createdAt":266,"description":267,"extension":268,"img":269,"meta":270,"navigation":124,"path":271,"seo":272,"stem":273,"tags":274,"updatedAt":266,"__hash__":278},"articles\u002Farticles\u002Fopenidconnect-proxy-authentication-required.md","OpenIdConnect  - Proxy Authentication Required",null,{"type":9,"value":10,"toc":264},"minimark",[11,15,220,225,228,260],[12,13,14],"p",{},"While setting up ASP.NET Core with OpenID Connect I am getting the following exception on the web server (hosting via IIS).",[16,17,22],"pre",{"className":18,"code":19,"language":20,"meta":21,"style":21},"language-html shiki shiki-themes github-light github-dark","System.InvalidOperationException: IDX20803: Unable to obtain configuration from: 'https:\u002F\u002Fchild.mydomain.com\u002FIdp\u002F.well-known\u002Fopenid-configuration'. ---> \nSystem.IO.IOException: IDX20807: Unable to retrieve document from: 'https:\u002F\u002Fchild.mydomain.com\u002FIdp\u002F.well-known\u002Fopenid-configuration'. \nHttpResponseMessage: 'StatusCode: 407, ReasonPhrase: 'Proxy Authorization Required', Version: 1.1, Content: System.Net.Http.HttpConnectionResponseContent, \nHeaders: { Proxy-Authenticate: NTLM Date: Wed, 08 Apr 2020 14:13:30 GMT Pragma: no-cache Cache-Control: no-cache Via: 1.1 ws5001.ch2m.com:8080 Proxy-Connection: keep-alive Content-Type: text\u002Fhtml; charset=\"UTF-8\" Content-Length: 415 }', HttpResponseMessage.Content: \n\u003C!DOCTYPE HTML PUBLIC \"-\u002F\u002FIETF\u002F\u002FDTD HTML 2.0\u002F\u002FEN\"> \u003Chtml>\u003Chead> \u003Ctitle>\n    407 Proxy Authentication Required\u003C\u002Ftitle> \u003C\u002Fhead>\u003Cbody> \n    Proxy Authentication Required \n\nThis server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.\n\u003C\u002Fbody>\u003C\u002Fhtml>\nat Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel) at\nMicrosoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(String address, IDocumentRetriever retriever, CancellationToken cancel) at\nMicrosoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel) --- \nEnd of inner exception stack trace --- at\nMicrosoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel) at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler\n.HandleChallengeAsyncInternal(AuthenticationProperties properties) at\nMicrosoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.HandleChallengeAsync(AuthenticationProperties properties) at\nMicrosoft.AspNetCore.Authentication.AuthenticationHandler`1.ChallengeAsync(AuthenticationProperties properties) at Microsoft.AspNetCore.Authentication.AuthenticationService.ChallengeAsync(HttpContext context, String scheme, AuthenticationProperties properties) at\nMicrosoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) at\nMicrosoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context) at\nMicrosoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.\u003CInvoke>g__Awaited|(ExceptionHandlerMiddleware middleware, HttpContext context,\n","html","",[23,24,25,34,40,46,52,92,113,119,126,132,147,153,159,165,171,177,183,189,195,201,207],"code",{"__ignoreMap":21},[26,27,30],"span",{"class":28,"line":29},"line",1,[26,31,33],{"class":32},"sVt8B","System.InvalidOperationException: IDX20803: Unable to obtain configuration from: 'https:\u002F\u002Fchild.mydomain.com\u002FIdp\u002F.well-known\u002Fopenid-configuration'. ---> \n",[26,35,37],{"class":28,"line":36},2,[26,38,39],{"class":32},"System.IO.IOException: IDX20807: Unable to retrieve document from: 'https:\u002F\u002Fchild.mydomain.com\u002FIdp\u002F.well-known\u002Fopenid-configuration'. \n",[26,41,43],{"class":28,"line":42},3,[26,44,45],{"class":32},"HttpResponseMessage: 'StatusCode: 407, ReasonPhrase: 'Proxy Authorization Required', Version: 1.1, Content: System.Net.Http.HttpConnectionResponseContent, \n",[26,47,49],{"class":28,"line":48},4,[26,50,51],{"class":32},"Headers: { Proxy-Authenticate: NTLM Date: Wed, 08 Apr 2020 14:13:30 GMT Pragma: no-cache Cache-Control: no-cache Via: 1.1 ws5001.ch2m.com:8080 Proxy-Connection: keep-alive Content-Type: text\u002Fhtml; charset=\"UTF-8\" Content-Length: 415 }', HttpResponseMessage.Content: \n",[26,53,55,58,62,66,69,73,76,78,81,84,86,89],{"class":28,"line":54},5,[26,56,57],{"class":32},"\u003C!",[26,59,61],{"class":60},"s9eBZ","DOCTYPE",[26,63,65],{"class":64},"sScJk"," HTML",[26,67,68],{"class":64}," PUBLIC",[26,70,72],{"class":71},"sZZnC"," \"-\u002F\u002FIETF\u002F\u002FDTD HTML 2.0\u002F\u002FEN\"",[26,74,75],{"class":32},"> \u003C",[26,77,20],{"class":60},[26,79,80],{"class":32},">\u003C",[26,82,83],{"class":60},"head",[26,85,75],{"class":32},[26,87,88],{"class":60},"title",[26,90,91],{"class":32},">\n",[26,93,95,98,100,103,105,107,110],{"class":28,"line":94},6,[26,96,97],{"class":32},"    407 Proxy Authentication Required\u003C\u002F",[26,99,88],{"class":60},[26,101,102],{"class":32},"> \u003C\u002F",[26,104,83],{"class":60},[26,106,80],{"class":32},[26,108,109],{"class":60},"body",[26,111,112],{"class":32},"> \n",[26,114,116],{"class":28,"line":115},7,[26,117,118],{"class":32},"    Proxy Authentication Required \n",[26,120,122],{"class":28,"line":121},8,[26,123,125],{"emptyLinePlaceholder":124},true,"\n",[26,127,129],{"class":28,"line":128},9,[26,130,131],{"class":32},"This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.\n",[26,133,135,138,140,143,145],{"class":28,"line":134},10,[26,136,137],{"class":32},"\u003C\u002F",[26,139,109],{"class":60},[26,141,142],{"class":32},">\u003C\u002F",[26,144,20],{"class":60},[26,146,91],{"class":32},[26,148,150],{"class":28,"line":149},11,[26,151,152],{"class":32},"at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel) at\n",[26,154,156],{"class":28,"line":155},12,[26,157,158],{"class":32},"Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(String address, IDocumentRetriever retriever, CancellationToken cancel) at\n",[26,160,162],{"class":28,"line":161},13,[26,163,164],{"class":32},"Microsoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel) --- \n",[26,166,168],{"class":28,"line":167},14,[26,169,170],{"class":32},"End of inner exception stack trace --- at\n",[26,172,174],{"class":28,"line":173},15,[26,175,176],{"class":32},"Microsoft.IdentityModel.Protocols.ConfigurationManager1.GetConfigurationAsync(CancellationToken cancel) at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler\n",[26,178,180],{"class":28,"line":179},16,[26,181,182],{"class":32},".HandleChallengeAsyncInternal(AuthenticationProperties properties) at\n",[26,184,186],{"class":28,"line":185},17,[26,187,188],{"class":32},"Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.HandleChallengeAsync(AuthenticationProperties properties) at\n",[26,190,192],{"class":28,"line":191},18,[26,193,194],{"class":32},"Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.ChallengeAsync(AuthenticationProperties properties) at Microsoft.AspNetCore.Authentication.AuthenticationService.ChallengeAsync(HttpContext context, String scheme, AuthenticationProperties properties) at\n",[26,196,198],{"class":28,"line":197},19,[26,199,200],{"class":32},"Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) at\n",[26,202,204],{"class":28,"line":203},20,[26,205,206],{"class":32},"Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context) at\n",[26,208,210,213,217],{"class":28,"line":209},21,[26,211,212],{"class":32},"Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.\u003C",[26,214,216],{"class":215},"s7hpK","Invoke",[26,218,219],{"class":32},">g__Awaited|(ExceptionHandlerMiddleware middleware, HttpContext context,\n",[221,222,224],"h4",{"id":223},"solution","Solution",[12,226,227],{},"Adding the following (for now solved this issue)",[16,229,233],{"className":230,"code":231,"language":232,"meta":21,"style":21},"language-cs shiki shiki-themes github-light github-dark",".AddOpenIdConnect(\"oidc\", options =>  { \n    options.BackchannelHttpHandler = new HttpClientHandler { \n    UseProxy = false, \n    UseDefaultCredentials = true \n }; \n","cs",[23,234,235,240,245,250,255],{"__ignoreMap":21},[26,236,237],{"class":28,"line":29},[26,238,239],{},".AddOpenIdConnect(\"oidc\", options =>  { \n",[26,241,242],{"class":28,"line":36},[26,243,244],{},"    options.BackchannelHttpHandler = new HttpClientHandler { \n",[26,246,247],{"class":28,"line":42},[26,248,249],{},"    UseProxy = false, \n",[26,251,252],{"class":28,"line":48},[26,253,254],{},"    UseDefaultCredentials = true \n",[26,256,257],{"class":28,"line":54},[26,258,259],{}," };\n",[261,262,263],"style",{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s7hpK, html code.shiki .s7hpK{--shiki-default:#B31D28;--shiki-default-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":21,"searchDepth":36,"depth":36,"links":265},[],"2020-04-09T16:52:26.395Z","While working through setup and configuration of Identity Server 4, I came across this authentication proxy issue.  Maybe this will help you out.","md","\u002Farticles\u002Fimages\u002Fopenidconnect.png",{},"\u002Farticles\u002Fopenidconnect-proxy-authentication-required",{"title":6,"description":267},"articles\u002Fopenidconnect-proxy-authentication-required",[275,276,277],"netcore","authentication","openid","BUI49bXPepv-NCmQ8IZtCDnHIgylvqx-CIRegHnSAtw",[280,294,307],{"id":281,"title":282,"body":283,"description":287,"extension":268,"img":288,"meta":289,"name":276,"navigation":124,"path":290,"seo":291,"stem":292,"__hash__":293},"tags\u002Ftags\u002Fauthentication.md","Authentication",{"type":9,"value":284,"toc":285},[],{"title":21,"searchDepth":36,"depth":36,"links":286},[],"OAuth definition OAuth is an open-standard authorization protocol or framework that describes how unrelated servers and services can safely allow authenticated access to their assets without actually sharing the initial, related, single logon credential.","https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1598313183973-4effcded8d5e?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=675&q=80",{},"\u002Ftags\u002Fauthentication",{"description":287},"tags\u002Fauthentication","_8T06qDTgOUmS90agK3hCtpIqsbig8JcZkl5g2N1H9A",{"id":295,"title":296,"body":297,"description":301,"extension":268,"img":288,"meta":302,"name":275,"navigation":124,"path":303,"seo":304,"stem":305,"__hash__":306},"tags\u002Ftags\u002Fnetcore.md","Netcore",{"type":9,"value":298,"toc":299},[],{"title":21,"searchDepth":36,"depth":36,"links":300},[],".NET Core is a new version of .NET Framework, which is a free, open-source, general-purpose development platform maintained by Microsoft. It is a cross-platform framework that runs on Windows, macOS, and Linux operating systems.",{},"\u002Ftags\u002Fnetcore",{"description":301},"tags\u002Fnetcore","D5BWCPpKVXJTUKU0TRuD3sWQ9rXtqETGkxzHAK__g5w",{"id":308,"title":309,"body":310,"description":314,"extension":268,"img":288,"meta":315,"name":277,"navigation":124,"path":316,"seo":317,"stem":318,"__hash__":319},"tags\u002Ftags\u002Fopenid.md","Openid",{"type":9,"value":311,"toc":312},[],{"title":21,"searchDepth":36,"depth":36,"links":313},[],"openid, oauth",{},"\u002Ftags\u002Fopenid",{"description":314},"tags\u002Fopenid","fnD9ug9u_g4AFOzLY14RqGvvBJuDk-n1o2RCO1i99aY",{"id":321,"title":322,"author":7,"body":323,"createdAt":415,"description":416,"extension":268,"img":385,"meta":417,"navigation":124,"path":418,"seo":419,"stem":420,"tags":421,"updatedAt":415,"__hash__":423},"articles\u002Farticles\u002Fgithub-desktop–‘husky’--pre-commit-exception.md","GitHub Desktop ‘husky’ pre commit Exception",{"type":9,"value":324,"toc":413},[325,328,332,340,380,395,398,401,404,407,410],[12,326,327],{},"After adding a solution to my local GIT repository, and comitting to local master I received the following exception…",[329,330,331],"strong",{},"Commit failed - exit code 1 received, with output: 'husky > pre-commit (node v12.16.2)",[12,333,334,337,339],{},[26,335,336],{},"npm run lint",[26,338,336],{}," >\nvuesion@3.7.2 lint D:_Projects\\GitHub\\GitHub\\Yardy\\VueEParent\\VueE\\VueE\\PWA\\vuesion-master",[12,341,342,344,345,347,350,352,353,355,356,358,361,362,364,365,367,368,370,371,373,374,376,377,379],{},[26,343,336],{}," > vuesion lint\n",[26,346,336],{},[26,348,349],{},"npm run test",[26,351,349],{}," > vuesion@3.7.2 test D:_Projects\\GitHub\\GitHub\\Yardy\\VueEParent\\VueE\\VueE\\PWA\\vuesion-master\n",[26,354,349],{}," > vuesion test --coverage\n",[26,357,349],{},[26,359,360],{},"vuesion prettier --staged","   Finding changed files since git revision 5f8e91e.\n",[26,363,360],{},"   Found 334 changed files.\n",[26,366,349],{}," PASS src\u002Fapp\u002Fshared\u002Fcomponents\u002FVueDropdownMenu\u002FVueDropdownMenu.spec.ts\n",[26,369,349],{}," PASS src\u002Fapp\u002Fshared\u002Fcomponents\u002FVueButton\u002FVueButton.spec.ts\n",[26,372,349],{}," PASS src\u002Fapp\u002Fshared\u002Fcomponents\u002FVueSlider\u002FVueSlider.spec.ts\n",[26,375,349],{}," PASS src\u002Fapp\u002Fshared\u002Fcomponents\u002FVueAutocomplete\u002FVueAutocomplete.spec.ts (5.11s)\n",[26,378,349],{}," PASS src\u002Fapp\u002Fshared\u002Fcomponents\u002FVueStarRating\u002FVueStarRating.spe",[12,381,382],{},[383,384,386],"a",{"href":385},"\u002Farticles\u002Fimages\u002FFSMlV0tu1N_637229069433438891.png",[387,388],"img",{"style":389,"title":390,"src":391,"alt":390,"width":392,"height":393,"border":394},"border: 0px currentcolor; display: inline; background-image: none;","FSMlV0tu1N","\u002Farticles\u002Fimages\u002FFSMlV0tu1N_thumb_637229069434485862.png",417,360,0,[12,396,397],{},"Attempts & Solution:",[12,399,400],{},"*Tried adding C:\\Program Files\\Git\\bin to PATH – no change (tried a commit and still have the issue)\n*Tried adding C:\\Program Files\\nodejs to PATH – no change (tried a commit and still have the issue)\n*Got it (worked)",[12,402,403],{},"npm rebuild\nremoved the node_modules",[12,405,406],{},"performed my commit",[12,408,409],{},"npm install",[12,411,412],{},"All good for now",{"title":21,"searchDepth":36,"depth":36,"links":414},[],"2020-04-19T15:29:03.532Z","GitHub Desktop issue with pre-commit package and related hooks? Struggled with this one this morning and tried a few things.  I thought I would document so it may help others struggling with the same issue.",{},"\u002Farticles\u002Fgithub-desktop-'husky'-pre-commit-exception",{"title":322,"description":416},"articles\u002Fgithub-desktop–‘husky’--pre-commit-exception",[422],"git","t0XlubouJE4FtSJ9GeIA8Xwjdns6LCNLcGxCMFZjgA0",{"id":425,"title":426,"author":7,"body":427,"createdAt":468,"description":469,"extension":268,"img":440,"meta":470,"navigation":124,"path":471,"seo":472,"stem":473,"tags":474,"updatedAt":468,"__hash__":477},"articles\u002Farticles\u002Fyour-connection-is-not-private-google-chrome.md","Your connection is not private–Google Chrome",{"type":9,"value":428,"toc":466},[429,432,443,450,453,463],[12,430,431],{},"Seen1 this \"Your connection is not private” while working with https on your localhost (workstation).",[12,433,434],{},[383,435,437],{"href":436},"\u002Farticles\u002Fimages\u002Fimage_637206600346445330.png",[387,438],{"style":389,"title":439,"src":440,"alt":439,"width":441,"height":442,"border":394},"image","\u002Farticles\u002Fimages\u002Fimage_thumb_637206600347776935.png",497,433,[12,444,445,446,449],{},"In Chrome, put in chrome:\u002F\u002Fflags\u002F#allow-insecure-localhost in the address bar.",[447,448],"br",{},"\nEnable the option that says \"Allow invalid certificates for resources loaded from localhost\".",[12,451,452],{},"Restart Chrome, and it should allow the site.",[12,454,455],{},[383,456,458],{"href":457},"\u002Farticles\u002Fimages\u002Fimage_637206600348897864.png",[387,459],{"style":389,"title":439,"src":460,"alt":439,"width":461,"height":462,"border":394},"\u002Farticles\u002Fimages\u002Fimage_thumb_637206600350111622.png",499,79,[12,464,465],{},"Worked like a charm!",{"title":21,"searchDepth":36,"depth":36,"links":467},[],"2020-03-24T15:20:35.123Z","Working local, working with https? Got your desktop environment working well, however while using Chrome and browsing you get this \"not private\" error.  You can continue working\u002Fbrowsing if you click through advanced and proceed.  This is great but if you are reading this my bet you are looking for a better solution.  Read on!",{},"\u002Farticles\u002Fyour-connection-is-not-private-google-chrome",{"title":426,"description":469},"articles\u002Fyour-connection-is-not-private-google-chrome",[475,476,275],"angular","vuejs","gHd-_VYIEkDSYbxkw6rXref1-CvJ-95vU8g6QOgK9qc",1781574763163]