Joonas W's Bloghttps://joonasw.net/rssJoonas Westlin 20242024-03-20T07:37:42ZJoonas Westlinhttps://joonasw.nethttps://joonasw.net/view/building-vehicle-location-tracking-app-in-azure-part-5-front-endBuilding a vehicle location tracking app in Azure part 5: Front-end2024-03-20T07:37:19Z2024-03-20T07:37:19ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-vehicle-location-tracking-app-in-azure-part-4-signalrBuilding a vehicle location tracking app in Azure part 4: SignalR2024-03-14T08:57:13Z2024-03-20T07:37:26ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-vehicle-location-tracking-app-in-azure-part-3-function-appBuilding a vehicle location tracking app in Azure part 3: Function App2024-03-12T09:56:44Z2024-03-20T07:37:31ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-vehicle-location-tracking-app-in-azure-part-2-device-simulatorBuilding a vehicle location tracking app in Azure part 2: Device simulator2024-02-29T12:20:32Z2024-03-20T07:37:36ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-vehicle-location-tracking-app-in-azure-part-1-architectureBuilding a vehicle location tracking app in Azure part 1: Architecture2024-02-22T16:19:54Z2024-03-20T07:37:42ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/using-azure-key-vault-for-signing-and-encrypting-json-web-tokensUsing Azure Key Vault for signing and encrypting JSON Web Tokens2024-02-20T14:50:52Z2024-02-20T14:50:52ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/durable-functions-deep-dive-part-3-running-an-activityDurable Functions Deep Dive part 3: Running an activity2022-09-11T13:02:51Z2022-09-11T13:02:51ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/durable-functions-deep-dive-part-2-starting-an-orchestrationDurable Functions Deep Dive part 2: Starting an orchestration2022-04-08T19:07:20Z2022-09-11T13:03:09ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/durable-functions-deep-dive-part-1-instance-startupDurable Functions Deep Dive part 1: Instance startup2022-03-27T13:56:27Z2022-09-11T13:03:21ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-code-sandbox-with-durable-functions-and-container-instancesBuilding a code sandbox with Durable Functions and Container Instances2022-03-20T19:27:54Z2022-03-20T19:27:54ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-jwt-authentication-in-net-isolated-process-azure-functionsAzure AD JWT authentication in .NET isolated process Azure Functions2021-09-12T12:12:25Z2021-09-12T12:12:25ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/migrating-social-accounts-to-azure-ad-b2cMigrating social accounts to Azure AD B2C2021-06-30T15:58:48Z2021-06-30T15:58:48ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/arrays-in-aspnet-mvc-core-route-parametersArrays in ASP.NET MVC Core route parameters2021-04-30T14:22:19Z2021-04-30T14:22:19ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/access-data-in-cosmos-db-with-managed-identitiesAccess data in Cosmos DB with Managed Identities2021-04-15T05:42:20Z2021-04-15T05:42:20ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/track-activity-and-sub-orchestrator-progress-in-azure-durable-functions-orchestratorsTrack activity and sub-orchestrator progress in Azure Durable Functions orchestrators2021-04-03T09:44:59Z2021-04-03T09:44:59ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-azure-ad-b2c-custom-policies-part-2-azure-devops-automated-build-and-deploymentBuilding Azure AD B2C custom policies part 2: Azure DevOps automated build and deployment2021-03-06T08:52:12Z2021-03-06T08:55:42ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-azure-ad-b2c-custom-policies-part-1-vs-code-and-manual-deploymentBuilding Azure AD B2C custom policies part 1: Visual Studio Code and manual deployment2021-01-23T13:54:36Z2021-03-06T08:53:08ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/get-managed-identity-access-token-in-azure-app-service-through-kuduGet a Managed Identity access token in Azure App Service through Advanced Tools (Kudu)2021-01-22T14:49:34Z2021-01-22T14:49:34ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/moving-net-core-user-secrets-to-another-computerMoving .NET Core user secrets to another computer2021-01-13T17:33:08Z2021-01-13T17:33:08ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/cleaning-up-azure-durable-functions-execution-historyCleaning up Azure Durable Functions execution history2020-10-27T18:19:44Z2020-10-27T18:19:44ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/using-azure-rbac-with-azure-key-vaultUsing Azure RBAC with Azure Key Vault2020-09-24T11:20:12Z2020-09-24T11:20:12ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-v2-and-msal-in-2020Azure AD v2 and MSAL in 20202020-08-31T11:37:37Z2020-08-31T11:37:37ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/how-azure-durable-functions-scaleHow Azure Durable Functions scale2020-06-04T05:33:53Z2020-06-04T05:33:53ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/hide-actions-from-swagger-openapi-documentation-in-aspnet-coreHide actions from Swagger / OpenAPI documentation in ASP.NET Core2020-03-16T10:41:48Z2020-03-16T10:41:48ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-data-protection-with-azure-key-vault-and-azure-storageASP.NET Core Data Protection with Azure Key Vault and Azure Storage2020-03-14T12:23:28Z2020-08-07T11:28:46ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-cosmos-db-free-tierAzure Cosmos DB Free Tier2020-03-07T10:02:28Z2020-03-07T10:02:28ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/testing-azure-ad-protected-apis-part-5-pipelines-in-azure-devopsTesting Azure AD-protected APIs, part 5: Pipelines in Azure DevOps2020-01-25T10:15:48Z2020-01-25T10:15:48ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/testing-azure-ad-protected-apis-part-4-github-actions-ci-workflowTesting Azure AD-protected APIs, part 4: GitHub Actions CI workflow2020-01-05T12:14:30Z2020-01-05T12:14:30ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/testing-azure-ad-protected-apis-part-3-automated-integration-testsTesting Azure AD-protected APIs, part 3: Automated integration tests2019-12-29T14:41:01Z2019-12-29T14:41:01ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/testing-azure-ad-protected-apis-part-2-postmanTesting Azure AD-protected APIs, part 2: Postman2019-11-20T18:23:26Z2019-11-20T18:23:26ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/testing-azure-ad-protected-apis-part-1-swagger-uiTesting Azure AD-protected APIs, part 1: Swagger UI2019-11-11T09:46:16Z2019-11-11T09:46:16ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/setting-up-free-https-certificate-in-azure-app-serviceSetting up a free HTTPS certificate in Azure App Service2019-11-05T18:16:04Z2019-11-06T17:13:51ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/speaking-at-techorama-nl-2019-about-managed-identitiesSpeaking at Techorama NL 2019 about Managed Identities2019-09-21T13:27:10Z2019-09-21T13:27:10ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/cross-tenant-token-attacks-now-harder-in-azure-adCross-tenant token attacks are now harder in Azure AD2019-08-24T18:05:56Z2019-08-24T18:05:56ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/always-check-token-permissions-in-aad-protected-apiAlways check permissions in tokens in an Azure AD protected API2019-08-05T15:20:33Z2019-08-05T15:20:33ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/why-you-should-not-put-secrets-in-native-applicationsWhy you should not put secrets in native applications2019-05-29T18:59:27Z2019-05-29T18:59:27ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/keeping-secrets-out-of-version-control-in-net-applicationsKeeping secrets out of version control in .NET applications2019-05-26T09:48:19Z2019-05-26T09:48:19ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/best-practices-for-n-tenant-azure-ad-applicationsBest practices for N-tenant Azure AD applications2019-05-21T19:29:09Z2019-05-21T19:29:09ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/ropc-grant-flow-in-azure-adResource Owner Password Credentials grant flow in Azure AD2019-05-05T22:49:47Z2019-05-05T22:49:47ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/avoiding-wildcard-reply-urls-with-msal-jsAvoiding wildcard reply URLs with MSAL.js2019-05-02T14:01:09Z2019-05-02T14:01:09ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/using-groups-vs-using-app-roles-in-azure-ad-appsUsing groups vs using application roles for authorization in Azure AD apps2019-04-21T18:26:16Z2019-04-27T07:49:35ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/using-azure-key-vault-and-azure-storage-for-asp-net-core-data-protection-keysUsing Azure Key Vault and Azure Storage to store Data Protection keys with ASP.NET Core2019-04-07T13:13:48Z2019-04-07T13:13:48ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/exploring-cosmos-db-sdk-v3Exploring the new .NET Cosmos DB SDK (v3)2019-01-25T18:33:19Z2019-01-25T18:33:19ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aad-single-sign-out-in-asp-net-coreImplementing Azure AD Single Sign-Out in ASP.NET Core2018-11-23T17:37:09Z2018-11-23T17:41:34ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-service-bus-managed-identitiesAccessing Azure Service Bus with Managed Identities2018-11-03T10:18:23Z2018-11-03T10:18:23ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-authentication-aspnet-core-api-part-2Azure AD Authentication in ASP.NET Core APIs part 2: Custom permissions, multi-tenant APIs2018-08-02T16:44:51Z2018-08-02T16:44:51ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-msi-july-2018-updatesAzure AD Managed Service Identity July 2018 Updates2018-07-31T12:16:28Z2018-07-31T12:16:28ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-authentication-aspnet-core-api-part-1Azure AD Authentication in ASP.NET Core APIs part 1: Basic setup, checking scopes, creating a test client2018-06-12T19:13:22Z2018-06-12T19:13:22ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-authentication-with-azure-storage-and-managed-service-identityAzure AD Authentication with Azure Storage + Managed Service Identity2018-05-24T20:01:21Z2018-06-12T17:43:41ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/calling-your-apis-with-aad-msi-using-app-permissionsCalling your APIs with Azure AD Managed Service Identity using application permissions2018-04-24T19:07:10Z2018-04-24T19:07:10ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/adding-opt-in-feature-to-azure-ad-appAdding an opt-in feature to an Azure AD v1 app in a good way2018-04-18T08:39:55Z2018-04-18T08:39:55ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-v2-and-msal-from-dev-povAzure AD v2 and MSAL from a developer's point of view2018-04-10T10:11:20Z2018-04-10T10:22:01ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/csharp-await-and-js-promises-in-blazorUsing C# await against JS Promises in Blazor2018-04-07T12:55:16Z2018-04-07T12:55:16ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-data-annotation-localization-shared-resx-fileShared RESX file for data annotation localization in ASP.NET Core 2.02018-03-20T18:40:07Z2018-03-20T18:40:07ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aad-api-chains-and-cyclic-dependenciesAzure AD Multi-tenant Apps: API Chains and Cyclic Dependencies2018-03-17T22:07:22Z2018-03-17T22:07:22ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-azure-keyvault-msiASP.NET Core + Azure Key Vault + Azure AD MSI = Awesome way to do config2018-03-06T18:34:07Z2018-08-27T06:23:59ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/device-code-flowHow Device Code Flow works in Azure AD2018-02-27T20:50:54Z2018-03-05T19:41:32ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/how-to-detect-ai-ping-testsHow to detect a request is an Application Insights ping test2018-02-24T17:52:33Z2018-03-05T19:42:31ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-2-1-actionresult-of-tExploring ActionResult<T> in ASP.NET Core 2.12018-02-18T10:41:25Z2018-02-18T10:41:25ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/creating-auth-scheme-in-aspnet-core-2Creating an authentication scheme in ASP.NET Core 2.02018-02-02T22:23:56Z2018-02-02T22:24:20ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-on-behalf-of-aspnet-coreUsing Azure AD On-Behalf-Of flow in an ASP.NET Core 2.0 API2018-01-06T19:34:41Z2018-03-05T19:42:35ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/redis-cache-session-storeUsing Redis Cache for session data storage in ASP.NET Core2017-12-11T18:17:40Z2018-03-05T19:42:40ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/the-grant-requires-admin-permissionAADSTS90094: The grant requires admin permission, how to fix it and why it happens2017-12-09T19:36:59Z2018-03-05T19:42:45ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/adding-custom-claims-aspnet-core-2Adding custom claims to a user during authentication with ASP.NET Core 2.02017-12-05T18:51:35Z2018-04-02T10:10:49ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/defining-permissions-and-roles-in-aadDefining permission scopes and roles offered by an app in Azure AD2017-12-03T20:44:06Z2018-03-05T19:42:49ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/apply-authz-by-defaultApply Authorization by default in ASP.NET Core2017-11-29T17:54:59Z2017-11-29T17:54:59ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/custom-error-pagesCustom error pages in ASP.NET MVC Core2017-11-04T10:02:44Z2017-11-04T10:12:07ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/discovering-actions-and-razor-pagesDiscovering controller actions and Razor Pages in ASP.NET MVC Core2017-11-03T18:21:45Z2017-12-06T14:47:14ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-managed-service-identityAzure AD Managed Service Identity2017-10-13T07:24:16Z2018-03-05T19:42:53ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/find-out-if-url-matches-actionFind out if a URL matches an action in ASP.NET MVC Core2017-10-02T18:25:50Z2017-12-06T14:47:34ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-localization-deep-diveASP.NET Core Localization Deep Dive2017-09-03T13:37:04Z2017-12-06T14:48:07ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-2-configuration-changesASP.NET Core 2.0 Configuration Changes2017-07-02T11:42:43Z2017-12-06T14:50:29ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-2-azure-ad-authenticationASP.NET Core 2.0 Azure AD Authentication2017-06-04T20:53:53Z2018-03-05T19:42:58ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/aspnet-core-di-deep-diveASP.NET Core Dependency Injection Deep Dive2017-02-10T20:30:04Z2017-12-06T14:51:01ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/csp-in-aspnet-coreContent Security Policy (CSP) in ASP.NET Core2017-02-01T20:37:46Z2017-12-06T14:52:08ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/hpkp-in-aspnet-coreHTTP Public Key Pinning (HPKP) in ASP.NET Core2017-01-24T19:41:58Z2017-12-06T14:52:32ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/hsts-in-aspnet-coreHTTP Strict Transport Security (HSTS) in ASP.NET Core2017-01-22T21:03:24Z2017-12-06T14:52:40ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/enforcing-https-in-aspnet-coreEnforcing HTTPS in ASP.NET Core2017-01-21T10:26:01Z2017-01-21T10:26:01ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/attribute-routing-cheat-sheet-for-aspnet-coreAttribute routing cheat sheet for ASP.NET Core2016-10-22T09:35:46Z2016-10-22T09:35:59ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/building-a-basic-web-api-on-asp-net-coreBuilding a basic Web API on ASP.NET Core2016-10-18T18:58:31Z2016-10-18T18:58:31ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-ad-b2c-with-aspnet-coreAzure AD B2C with ASP.NET Core 1.02016-08-27T19:18:23Z2018-03-05T19:45:45ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/asp-net-core-1-azure-ad-authenticationASP.NET Core 1.0 Azure AD Authentication2016-07-25T12:41:58Z2018-03-05T19:45:53ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/asp-net-core-1-configuration-deep-diveASP.NET Core 1.0 Configuration Deep Dive2016-06-29T20:35:59Z2018-01-20T11:37:29ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/asp-net-core-1-in-azure-web-appsASP.NET Core 1.0 in Azure Web Apps2016-06-27T19:12:14Z2017-12-11T19:07:24ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/azure-documentdb-and-web-apps-global-deploymentAzure DocumentDB and Web Apps global deployment2016-06-26T12:43:00Z2017-12-11T19:07:47ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/nested-azure-traffic-manager-profilesNested Azure Traffic Manager profiles2016-06-24T19:31:29Z2017-12-11T19:07:59ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/arr-affinity-in-azure-app-serviceARR Affinity in Azure App Service2016-06-24T08:36:20Z2017-12-11T19:08:07ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024https://joonasw.net/view/welcomeWelcome2016-06-23T10:00:00Z2016-06-23T10:00:00ZJoonas Westlinhttps://joonasw.netJoonas Westlin 2024