AWS credentials location for Windows IIS

You’d expect to have the AWS credentials loaded up by your application via %userprofile%\.aws but no, it doesn’t.

I think I’ve spent about 2 hours searching for the solution.  Thanks to some random person, I figured out that you have to place the files here instead:
C:\Windows\System32\config\systemprofile\.aws\credentials

Now I finally got my ASP .NET Core 6.0 backend API running on my windows server.

Environment Variables -> AWS Parameter Store

After contemplating wether to use Azure’s vault, or AWS’s Secrets Manager, I’ve ended with the choice to use AWS’s Parameter Store.
Simple and clean.

– NuGet required (Amazon.Extensions.Configuration.SystemManager

For the minimal setup this is all you need in your Program.cs
builder.Configuration.AddSystemsManager(“PATH”, TimeSpan.FromDays(X));

I’ve safely stored the DB connection strings, and a few other sensitive data successfully.

Mobile detect method via php

https://www.codexworld.com/mobile-device-detection-in-php/

// Check if the "mobile" word exists in User-Agent 
$isMob = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "mobile")); 
  
// Check if the "tablet" word exists in User-Agent 
$isTab = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "tablet")); 
 
// Platform check  
$isWin = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "windows")); 
$isAndroid = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "android")); 
$isIPhone = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "iphone")); 
$isIPad = is_numeric(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]), "ipad")); 
$isIOS = $isIPhone || $isIPad; 
 
if($isMob){ 
    if($isTab){ 
        echo 'Using Tablet Device...'; 
    }else{ 
        echo 'Using Mobile Device...'; 
    } 
}else{ 
    echo 'Using Desktop...'; 
} 
 
if($isIOS){ 
    echo 'iOS'; 
}elseif($isAndroid){ 
    echo 'ANDROID'; 
}elseif($isWin){ 
    echo 'WINDOWS'; 
}

Fix: IIS not loading Unity WebGL project (stuck loading)

  1. Add the following to the web.config file.
<system.webServer>
 <staticContent>
 <mimeMap fileExtension=".mem" mimeType="application/octet-stream" />
 <mimeMap fileExtension=".data" mimeType="application/octet-stream" />
 <mimeMap fileExtension=".memgz" mimeType="application/octet-stream" />
 <mimeMap fileExtension=".datagz" mimeType="application/octet-stream" />
 <mimeMap fileExtension=".unity3dgz" mimeType="application/octet-stream" />
 <mimeMap fileExtension=".jsgz" mimeType="application/x-javascript; charset=UTF-8" />
 </staticContent>
 <urlCompression doStaticCompression="true" doDynamicCompression="false" />
 </system.webServer>

Back from break

I have kept with my studies on and off, but got in a dilemma on what I want to code next…
Let’s make it clear that I did finish my very first IOS app, distributed privately.
UI part is not looking good, but it is functional and so far bug free.
Speaking of bugs, I found a bug with my first windows app the “ArcheAge Calculator”
Found a quick and dirty? fix.

What’s next on the table.
– Recode the entire bucket list/todo app once .NET MAUI GA is released. SOON!
– Start working on a portfolio with my future projects via github, and my very own blazor published website

Now I need to figure out whether to keep hosting asp.net on the Windows VPS I pay roughly $50USD for, or to migrate and start using Azure?

Todo mobile app progress


Done with:
– Web API to hand out JWT bearer token to limited user
– Mobile app to authenticate user, retrieve Token via API
– Mobile app to save bearer token, and load for httpclient calls
– A way to add token in the httpclient header
– Save login username in preferences.
– Save password securely encrypted locally
– Data Binding to <CollectiveView.ItemTemplate>
– Figure out how to convert DateTime binding data to Date string

Left with:
– Add pages to display category specific Todos
– Add a page to create a new Todo in database
– Checkbox selection to Update data in database
– Checkbox selection to Delete data from database
– Add internet connectivity check before communicating with API
– Return user to login if Token is expired
– Learn QueryAsync, UpdateAsync, DeleteAsync

– Touch up UI
– Testing anything and everything on iphone

Got my token to store/load.

I thought a basic Todo app would be a walk in the park, but having to implement securely storing bearer tokens wasn’t on my mind.
Done with:
– Web API to hand out JWT bearer token to limited user
– Mobile app to authenticate user, retrieve Token via API
– Mobile app to save bearer token, and load for httpclient calls.

Still left with:
– Save certain fields in local preferences storage which aren’t a security risk
– A way to add token in the httpclient header
– Design UI for todo app
– Testing, and release.