-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from swiss-ssi-group/dev-issue
Issue and publish
- Loading branch information
Showing
157 changed files
with
90,183 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
|
||
name: Build and deploy Issue Door unlocked | ||
|
||
env: | ||
AZURE_WEBAPP_NAME: issueunlockdoor # set this to the name of your Azure Web App | ||
AZURE_WEBAPP_PACKAGE_PATH: '.' # set this to the path to your web app project, defaults to the repository root | ||
DOTNET_VERSION: '7.0' # set this to the .NET Core version to use | ||
|
||
on: | ||
push: | ||
branches: [ "deploy-issuer" ] | ||
workflow_dispatch: | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
- name: Set up .NET Core | ||
uses: actions/setup-dotnet@v2 | ||
with: | ||
dotnet-version: ${{ env.DOTNET_VERSION }} | ||
|
||
- name: Set up dependency caching for faster builds | ||
uses: actions/cache@v3 | ||
with: | ||
path: ~/.nuget/packages | ||
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} | ||
restore-keys: | | ||
${{ runner.os }}-nuget- | ||
- name: Build with dotnet | ||
run: dotnet build --configuration Release | ||
|
||
- name: dotnet publish | ||
run: dotnet publish ./IssueUnlockDoor/IssueUnlockDoor.csproj -c Release -o ${{env.DOTNET_ROOT}}/issuerpackage | ||
|
||
- name: Upload artifact for deployment job | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: .net-app | ||
path: ${{env.DOTNET_ROOT}}/issuerpackage | ||
|
||
deploy: | ||
permissions: | ||
contents: none | ||
runs-on: ubuntu-latest | ||
needs: build | ||
environment: | ||
name: 'Development' | ||
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} | ||
|
||
steps: | ||
- name: Download artifact from build job | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: .net-app | ||
|
||
- name: Deploy to Azure Web App | ||
id: deploy-to-webapp | ||
uses: azure/webapps-deploy@v2 | ||
with: | ||
app-name: ${{ env.AZURE_WEBAPP_NAME }} | ||
publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE_ISSUER }} | ||
package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
|
||
name: Build and deploy EmployeeUnlockDoor | ||
|
||
env: | ||
AZURE_WEBAPP_NAME: employeeunlockdoor # set this to the name of your Azure Web App | ||
AZURE_WEBAPP_PACKAGE_PATH: '.' # set this to the path to your web app project, defaults to the repository root | ||
DOTNET_VERSION: '7.0' # set this to the .NET Core version to use | ||
|
||
on: | ||
push: | ||
branches: [ "deploy-verifier" ] | ||
workflow_dispatch: | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
- name: Set up .NET Core | ||
uses: actions/setup-dotnet@v2 | ||
with: | ||
dotnet-version: ${{ env.DOTNET_VERSION }} | ||
|
||
- name: Set up dependency caching for faster builds | ||
uses: actions/cache@v3 | ||
with: | ||
path: ~/.nuget/packages | ||
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} | ||
restore-keys: | | ||
${{ runner.os }}-nuget- | ||
- name: Build with dotnet | ||
run: dotnet build --configuration Release | ||
|
||
- name: dotnet publish | ||
run: dotnet publish ./EmployeeUnlockDoor/EmployeeUnlockDoor.csproj -c Release -o ${{env.DOTNET_ROOT}}/verifierpackage | ||
|
||
- name: Upload artifact for deployment job | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: .net-app | ||
path: ${{env.DOTNET_ROOT}}/verifierpackage | ||
|
||
deploy: | ||
permissions: | ||
contents: none | ||
runs-on: ubuntu-latest | ||
needs: build | ||
environment: | ||
name: 'Development' | ||
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} | ||
|
||
steps: | ||
- name: Download artifact from build job | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: .net-app | ||
|
||
- name: Deploy to Azure Web App | ||
id: deploy-to-webapp | ||
uses: azure/webapps-deploy@v2 | ||
with: | ||
app-name: ${{ env.AZURE_WEBAPP_NAME }} | ||
publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE_VERIFIER }} | ||
package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
@page | ||
@page "{UnlockErrorMessage?}" | ||
@model EmployeeUnlockDoor.Pages.UnlockDoor.UnlockDoorErrorModel | ||
|
||
|
||
|
7 changes: 4 additions & 3 deletions
7
EmployeeUnlockDoor/Pages/UnlockDoor/UnlockDoorError.cshtml.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,18 @@ | ||
using Microsoft.AspNetCore.Authorization; | ||
using Microsoft.AspNetCore.Mvc; | ||
using Microsoft.AspNetCore.Mvc.RazorPages; | ||
|
||
namespace EmployeeUnlockDoor.Pages.UnlockDoor; | ||
|
||
[AllowAnonymous] | ||
public class UnlockDoorErrorModel : PageModel | ||
{ | ||
[BindProperty(SupportsGet = true)] | ||
public string? UnlockErrorMessage { get; set; } | ||
|
||
public string? ErrorMessage { get; set; } | ||
|
||
public IActionResult OnGet() | ||
{ | ||
ErrorMessage = $"Something went wrong: your cannot enter!"; | ||
ErrorMessage = $"Something went wrong: your cannot enter: {UnlockErrorMessage}"; | ||
return Page(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,3 +14,5 @@ | |
</div> | ||
</div> | ||
</div> | ||
|
||
<div>@Model.NameSurnameMessage</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,22 +1,50 @@ | ||
using Microsoft.AspNetCore.Mvc; | ||
using Microsoft.AspNetCore.Authorization; | ||
using Microsoft.AspNetCore.Mvc.RazorPages; | ||
using Microsoft.Extensions.Caching.Distributed; | ||
using VerifierInsuranceCompany.Services; | ||
using System.Security.Claims; | ||
using Microsoft.AspNetCore.Components.Forms; | ||
using Microsoft.AspNetCore.Authentication; | ||
using Microsoft.AspNetCore.Authentication.Cookies; | ||
using static System.Runtime.InteropServices.JavaScript.JSType; | ||
|
||
namespace EmployeeUnlockDoor.Pages.UnlockDoor; | ||
|
||
[AllowAnonymous] | ||
public class UnlockedModel : PageModel | ||
{ | ||
private readonly ValidateUserAndDoorCodeService _validateUserAndDoorCodeService; | ||
|
||
public UnlockedModel(ValidateUserAndDoorCodeService validateUserAndDoorCodeService) | ||
{ | ||
_validateUserAndDoorCodeService = validateUserAndDoorCodeService; | ||
} | ||
|
||
[BindProperty] | ||
public string? StatePresented { get; set; } | ||
|
||
public IActionResult OnGet() | ||
[BindProperty] | ||
public string? NameSurnameMessage { get; set; } | ||
|
||
public async Task<IActionResult> OnGetAsync() | ||
{ | ||
var upn = HttpContext.User.FindFirst("RevocationId"); | ||
var doorCode = HttpContext.User.FindFirst("DoorCode"); | ||
|
||
var givenName = HttpContext.User.FindFirst("GivenName"); | ||
var surname = HttpContext.User.FindFirst("Surname"); | ||
|
||
NameSurnameMessage = $"Have a nice day {givenName!.Value} {surname!.Value}"; | ||
|
||
// Validate door code and VC claims | ||
(bool IsValid, string Error) validation = _validateUserAndDoorCodeService | ||
.PaycheckIdAndUserAreValid(upn!.Value, doorCode!.Value); | ||
|
||
if (!validation.IsValid) | ||
{ | ||
await HttpContext.SignOutAsync(); | ||
return Redirect($"~/UnlockDoor/UnlockDoorError/{validation.Error}"); | ||
} | ||
|
||
// Data should be fetched from a DB or an ERP service etc. | ||
|
||
return Page(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace EmployeeUnlockDoor.Services; | ||
|
||
public class DoorCodeClaims | ||
{ | ||
[JsonPropertyName("doorCode")] | ||
public string? DoorCode { get; set; } | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.