├── test ├── IntegrationTests │ ├── Data │ │ ├── Json │ │ │ ├── DeletePolicies │ │ │ │ └── EmptyInput.json │ │ │ ├── AddRules │ │ │ │ ├── EmptyRuleModel.json │ │ │ │ ├── PostgreError.json │ │ │ │ └── BlobStorageError.json │ │ │ ├── GetResourcePolicies │ │ │ │ ├── SKDMissingAppRequest.json │ │ │ │ ├── SKDMissingOrgRequest.json │ │ │ │ ├── Org2App1Request.json │ │ │ │ ├── Org2App2Request.json │ │ │ │ ├── SKDInvalidAppRequest.json │ │ │ │ ├── SKDTaxReport2Request.json │ │ │ │ └── SKDUndefinedRequest.json │ │ │ ├── AccessListAuthorization │ │ │ │ ├── Permit_WithoutActionFilter_Request.json │ │ │ │ └── Permit_WithoutActionFilter_Response.json │ │ │ └── GetRules │ │ │ │ ├── GetRules_NoRulesRequest.json │ │ │ │ ├── GetRules_SuccessRequest.json │ │ │ │ ├── GetRules_MissingOfferedByInRequestRequest.json │ │ │ │ ├── GetRules_MissingValuesInRequestRequest.json │ │ │ │ ├── GetRules_UsingkeyRolePartyIdsRequest.json │ │ │ │ ├── GetRules_RuleTypeInheritedAsSubunitRequest.json │ │ │ │ ├── GetRules_RuleTypeInheritedViaKeyRoleRequest.json │ │ │ │ └── GetRules_RuleTypeInheritedAsSubunitViaKeyroleRequest.json │ │ ├── Xacml │ │ │ └── 3.0 │ │ │ │ ├── ConformanceTests │ │ │ │ ├── IID029Repository.properties │ │ │ │ ├── IID030Repository.properties │ │ │ │ ├── IIE001Repository.properties │ │ │ │ ├── IIE002Repository.properties │ │ │ │ ├── IIE003Repository.properties │ │ │ │ ├── PIP.txt │ │ │ │ ├── IIA001Response.json │ │ │ │ ├── IID029Special.txt │ │ │ │ ├── IID030Special.txt │ │ │ │ └── IIICSpecial.txt │ │ │ │ ├── ResourceRegistry │ │ │ │ ├── ResourceRegistry_OedFormuesfullmakt_Xml_PermitResponse.xml │ │ │ │ ├── ResourceRegistry_OedFormuesfullmakt_Xml_IndeterminateResponse.xml │ │ │ │ ├── AltinnResourceRegistry0007Response.json │ │ │ │ ├── AltinnResourceRegistry0008Response.json │ │ │ │ ├── AltinnResourceRegistry0010Response.json │ │ │ │ ├── ResourceRegistry_AccessListAuthorization_Json_DenyResponse.json │ │ │ │ ├── ResourceRegistry_OedFormuesfullmakt_Json_IndeterminateResponse.json │ │ │ │ ├── ResourceRegistry_AccessListAuthorization_Json_DenyActionFilterNotMatchingResponse.json │ │ │ │ ├── ResourceRegistry_AccessListAuthorization_Json_DenyAccessListDontSupportPersonResponse.json │ │ │ │ └── ResourceRegistry_SystemUserWithDelegation_TooManyRequestSubjects_IndeterminateResponse.json │ │ │ │ └── AltinnApps │ │ │ │ ├── AltinnAppsOrg1App1_UserDelegation_DeletedResponse.json │ │ │ │ └── AppPolicy_AltinnAppsOrg1App1_DAGL_NotApplicableResponse.json │ │ ├── Roles │ │ │ ├── user_2 │ │ │ │ └── party_1000 │ │ │ │ │ └── roles.json │ │ │ ├── user_20000095 │ │ │ │ └── party_50004222 │ │ │ │ │ └── roles.json │ │ │ ├── user_20000490 │ │ │ │ └── party_50005545 │ │ │ │ │ └── roles.json │ │ │ ├── user_1 │ │ │ │ └── party_1000 │ │ │ │ │ └── roles.json │ │ │ └── user_1337 │ │ │ │ ├── party_500800 │ │ │ │ └── roles.json │ │ │ │ ├── party_500801 │ │ │ │ └── roles.json │ │ │ │ ├── party_500802 │ │ │ │ └── roles.json │ │ │ │ └── party_500700 │ │ │ │ └── roles.json │ │ ├── Register │ │ │ ├── 500000.json │ │ │ ├── 501337.json │ │ │ ├── 512345.json │ │ │ ├── 500001.json │ │ │ ├── 500002.json │ │ │ ├── 500600.json │ │ │ ├── 500003.json │ │ │ ├── 500700.json │ │ │ ├── 500800.json │ │ │ ├── 500802.json │ │ │ ├── 500801.json │ │ │ ├── 510003.json │ │ │ ├── 510001.json │ │ │ ├── 510002.json │ │ │ └── Org │ │ │ │ ├── 897069650.json │ │ │ │ ├── 900000001.json │ │ │ │ ├── 897069631.json │ │ │ │ ├── 897069651.json │ │ │ │ ├── 950474084.json │ │ │ │ ├── 910457292.json │ │ │ │ ├── 897069652.json │ │ │ │ ├── 910423185.json │ │ │ │ ├── 910423495.json │ │ │ │ ├── 910471120.json │ │ │ │ └── 897069653.json │ │ └── blobs │ │ │ └── input │ │ │ └── org1 │ │ │ └── app5 │ │ │ └── 50001337 │ │ │ └── u20001337 │ │ │ └── delegationpolicy.xml │ ├── platform-org.pfx │ ├── selfSignedTestCertificate.pfx │ └── GlobalSuppressions.cs ├── Bruno │ └── Altinn.Authorization │ │ ├── .gitignore │ │ ├── bruno.json │ │ ├── environments │ │ ├── PROD.bru │ │ ├── DEV.bru │ │ ├── TT02.bru │ │ ├── AT22.bru │ │ ├── AT23.bru │ │ ├── AT24.bru │ │ └── YT01.bru │ │ └── .env.sample ├── UnitTest │ ├── Data │ │ └── Xacml │ │ │ └── 3.0 │ │ │ └── ConformanceTests │ │ │ ├── IID029Repository.properties │ │ │ ├── IID030Repository.properties │ │ │ ├── IIE003Repository.properties │ │ │ ├── IIE001Repository.properties │ │ │ ├── IIE002Repository.properties │ │ │ ├── PIP.txt │ │ │ ├── IID029Special.txt │ │ │ ├── IID030Special.txt │ │ │ ├── IIICSpecial.txt │ │ │ ├── IIA001Response.xml │ │ │ ├── IIA002Response.xml │ │ │ ├── IIA006Response.xml │ │ │ ├── IIA008Response.xml │ │ │ ├── IIA010Response.xml │ │ │ ├── IIA012Response.xml │ │ │ ├── IIA014Response.xml │ │ │ ├── IIA015Response.xml │ │ │ ├── IIA016Response.xml │ │ │ ├── IIA017Response.xml │ │ │ ├── IIA018Response.xml │ │ │ ├── IIA019Response.xml │ │ │ ├── IIA020Response.xml │ │ │ ├── IIA021Response.xml │ │ │ ├── IIB002Response.xml │ │ │ ├── IIB004Response.xml │ │ │ ├── IIB006Response.xml │ │ │ ├── IIB008Response.xml │ │ │ ├── IIB010Response.xml │ │ │ ├── IIB012Response.xml │ │ │ ├── IIB014Response.xml │ │ │ ├── IIB016Response.xml │ │ │ ├── IIB018Response.xml │ │ │ ├── IIB020Response.xml │ │ │ ├── IIB022Response.xml │ │ │ ├── IIB024Response.xml │ │ │ ├── IIB026Response.xml │ │ │ ├── IIB028Response.xml │ │ │ ├── IIB030Response.xml │ │ │ ├── IIB032Response.xml │ │ │ ├── IIB034Response.xml │ │ │ ├── IIB036Response.xml │ │ │ ├── IIB038Response.xml │ │ │ ├── IIB040Response.xml │ │ │ ├── IIB042Response.xml │ │ │ ├── IIB044Response.xml │ │ │ ├── IIB046Response.xml │ │ │ ├── IIB048Response.xml │ │ │ ├── IIB050Response.xml │ │ │ ├── IIB052Response.xml │ │ │ ├── IIC001Response.xml │ │ │ ├── IIC002Response.xml │ │ │ ├── IIC004Response.xml │ │ │ ├── IIC005Response.xml │ │ │ ├── IIC006Response.xml │ │ │ ├── IIC007Response.xml │ │ │ ├── IIC009Response.xml │ │ │ ├── IIC010Response.xml │ │ │ ├── IIC013Response.xml │ │ │ ├── IIC015Response.xml │ │ │ ├── IIC016Response.xml │ │ │ ├── IIC017Response.xml │ │ │ ├── IIC018Response.xml │ │ │ ├── IIC019Response.xml │ │ │ ├── IIC020Response.xml │ │ │ ├── IIC021Response.xml │ │ │ ├── IIC026Response.xml │ │ │ ├── IIC027Response.xml │ │ │ ├── IIC029Response.xml │ │ │ ├── IIC030Response.xml │ │ │ ├── IIC032Response.xml │ │ │ ├── IIC034Response.xml │ │ │ ├── IIC036Response.xml │ │ │ ├── IIC038Response.xml │ │ │ ├── IIC040Response.xml │ │ │ ├── IIC042Response.xml │ │ │ ├── IIC044Response.xml │ │ │ ├── IIC046Response.xml │ │ │ ├── IIC048Response.xml │ │ │ ├── IIC050Response.xml │ │ │ ├── IIC052Response.xml │ │ │ ├── IIC056Response.xml │ │ │ ├── IIC058Response.xml │ │ │ ├── IIC060Response.xml │ │ │ ├── IIC062Response.xml │ │ │ ├── IIC064Response.xml │ │ │ ├── IIC066Response.xml │ │ │ ├── IIC068Response.xml │ │ │ ├── IIC070Response.xml │ │ │ ├── IIC072Response.xml │ │ │ ├── IIC074Response.xml │ │ │ ├── IIC076Response.xml │ │ │ ├── IIC078Response.xml │ │ │ ├── IIC080Response.xml │ │ │ ├── IIC082Response.xml │ │ │ ├── IIC084Response.xml │ │ │ ├── IIC086Response.xml │ │ │ ├── IIC090Response.xml │ │ │ ├── IIC094Response.xml │ │ │ ├── IIC096Response.xml │ │ │ ├── IIC100Response.xml │ │ │ ├── IIC101Response.xml │ │ │ ├── IIC102Response.xml │ │ │ ├── IIC103Response.xml │ │ │ ├── IIC104Response.xml │ │ │ ├── IIC105Response.xml │ │ │ ├── IIC106Response.xml │ │ │ ├── IIC107Response.xml │ │ │ ├── IIC108Response.xml │ │ │ ├── IIC109Response.xml │ │ │ ├── IIC110Response.xml │ │ │ ├── IIC111Response.xml │ │ │ ├── IIC112Response.xml │ │ │ ├── IIC113Response.xml │ │ │ ├── IIC114Response.xml │ │ │ ├── IIC115Response.xml │ │ │ ├── IIC116Response.xml │ │ │ ├── IIC117Response.xml │ │ │ ├── IIC118Response.xml │ │ │ ├── IIC119Response.xml │ │ │ ├── IIC120Response.xml │ │ │ ├── IIC121Response.xml │ │ │ ├── IIC122Response.xml │ │ │ ├── IIC123Response.xml │ │ │ ├── IIC124Response.xml │ │ │ ├── IIC125Response.xml │ │ │ ├── IIC126Response.xml │ │ │ ├── IIC127Response.xml │ │ │ ├── IIC128Response.xml │ │ │ ├── IIC129Response.xml │ │ │ ├── IIC130Response.xml │ │ │ ├── IIC131Response.xml │ │ │ ├── IIC132Response.xml │ │ │ ├── IIC133Response.xml │ │ │ ├── IIC134Response.xml │ │ │ ├── IIC135Response.xml │ │ │ ├── IIC136Response.xml │ │ │ ├── IIC137Response.xml │ │ │ ├── IIC138Response.xml │ │ │ ├── IIC139Response.xml │ │ │ ├── IIC140Response.xml │ │ │ ├── IIC141Response.xml │ │ │ ├── IIC142Response.xml │ │ │ ├── IIC143Response.xml │ │ │ ├── IIC144Response.xml │ │ │ ├── IIC145Response.xml │ │ │ ├── IIC146Response.xml │ │ │ ├── IIC147Response.xml │ │ │ ├── IIC148Response.xml │ │ │ ├── IIC149Response.xml │ │ │ ├── IIC150Response.xml │ │ │ ├── IIC151Response.xml │ │ │ ├── IIC152Response.xml │ │ │ ├── IIC153Response.xml │ │ │ ├── IIC154Response.xml │ │ │ ├── IIC155Response.xml │ │ │ ├── IIC156Response.xml │ │ │ ├── IIC157Response.xml │ │ │ ├── IIC158Response.xml │ │ │ ├── IIC159Response.xml │ │ │ ├── IIC160Response.xml │ │ │ ├── IIC161Response.xml │ │ │ ├── IIC162Response.xml │ │ │ ├── IIC163Response.xml │ │ │ ├── IIC164Response.xml │ │ │ ├── IIC165Response.xml │ │ │ ├── IIC166Response.xml │ │ │ ├── IIC167Response.xml │ │ │ ├── IIC168Response.xml │ │ │ ├── IIC169Response.xml │ │ │ ├── IIC170Response.xml │ │ │ ├── IIC171Response.xml │ │ │ ├── IIC172Response.xml │ │ │ ├── IIC173Response.xml │ │ │ ├── IIC174Response.xml │ │ │ ├── IIC175Response.xml │ │ │ ├── IIC176Response.xml │ │ │ ├── IIC177Response.xml │ │ │ └── IIC178Response.xml │ └── GlobalSuppressions.cs ├── K6 │ ├── .prettierrc │ ├── src │ │ ├── data │ │ │ ├── testdata │ │ │ │ └── prodtestdata.json │ │ │ └── pdpinput.json │ │ └── availability.js │ ├── .yarnrc.yml │ ├── .gitignore │ └── package.json └── Functions │ └── GlobalSuppressions.cs ├── infrastructure ├── shared │ ├── at21.tfvars │ ├── at22.tfvars │ ├── at23.tfvars │ ├── at24.tfvars │ ├── provider.tf │ ├── README.md │ └── variables.tf └── modules │ ├── nat_gateway │ ├── outputs.tf │ └── variables.tf │ ├── service_bus │ └── outputs.tf │ ├── key_vault │ ├── outputs.tf │ └── variables.tf │ ├── postgres_database │ └── variables.tf │ ├── postgres_server │ └── outputs.tf │ ├── vnet │ └── variables.tf │ └── dns │ ├── variables.tf │ └── outputs.tf ├── .github ├── images │ ├── pods.png │ ├── approved.png │ ├── release-draft.png │ ├── releasedraft.png │ ├── slack-alerts.png │ ├── ado-prod-button.png │ ├── ado-tt02-button.png │ ├── awaiting-deploy.png │ ├── post-deployment.png │ ├── pre-deployment.png │ ├── publishedrelease.png │ ├── publishrelease.png │ ├── update-apim-prod.png │ ├── containerapp-props.png │ ├── failures-in-azure.png │ ├── pipeline-releases.png │ ├── review-deploy-prod.png │ ├── review-deploy-tt02.png │ ├── awaiting-deploy-tt02.png │ ├── deploy-prod-triggered.png │ ├── deploy-progress-tt02.png │ ├── edit-draft-releasenotes.png │ ├── functionapp-deploy-status.png │ ├── ado-pending-approval-screen.png │ ├── awaiting-deploy-prod-detail.png │ ├── awaiting-deploy-tt02-detail.png │ └── containerapp-provision-status.png ├── scripts │ ├── .editorconfig │ └── package.json ├── containerscan │ └── allowedlist.yaml ├── ISSUE_TEMPLATE │ └── task.md └── workflows │ └── assign-issues-to-projects.yml ├── src ├── Authorization │ ├── Migration │ │ ├── _pre │ │ │ └── README.md │ │ ├── _erase │ │ │ └── README.md │ │ ├── _post │ │ │ └── README.md │ │ ├── _init │ │ │ └── README.md │ │ ├── v0.05 │ │ │ └── 01-setup-tables.sql │ │ ├── _draft │ │ │ └── README.md │ │ ├── v0.00 │ │ │ └── 03-setup-grants.sql │ │ ├── v0.06 │ │ │ └── 03-setup-grants.sql │ │ ├── v0.02 │ │ │ └── 01-configure-functions.sql │ │ └── v0.04 │ │ │ └── 03-setup-grants.sql │ ├── Models │ │ ├── Oed │ │ │ ├── OedRoleAssignment.cs │ │ │ ├── OedRoleAssignments.cs │ │ │ └── OedRoleAssignmentRequest.cs │ │ ├── ResourceRegistry │ │ │ ├── ResourceAccessListMode.cs │ │ │ ├── Keyword.cs │ │ │ └── AuthorizationReferenceAttribute.cs │ │ ├── External │ │ │ ├── XacmlJsonRequestRootExternal.cs │ │ │ ├── XacmlJsonRequestReferenceExternal.cs │ │ │ ├── XacmlJsonRequestsExternal.cs │ │ │ ├── XacmlJsonMultiRequestsExternal.cs │ │ │ ├── XacmlJsonResponseExternal.cs │ │ │ └── XacmlJsonStatusCodeExternal.cs │ │ ├── MainUnitQuery.cs │ │ └── QueuePostReceipt.cs │ ├── Constants │ │ └── AltinnXacmlConstants.cs │ ├── Services │ │ └── Interface │ │ │ └── IOedRoleAssignmentWrapper.cs │ ├── appsettings.Staging.json │ ├── appsettings.Development.json │ ├── Helpers │ │ └── ServiceResourceHelper.cs │ ├── Configuration │ │ └── PostgreSQLSettings.cs │ └── Modelbindig │ │ └── XacmlRequestApiModel.cs ├── Altinn.Common.PEP │ ├── Altinn.Common.PEP │ │ ├── appsettings.Development.json │ │ ├── appsettings.json │ │ ├── Configuration │ │ │ └── PepSettings.cs │ │ ├── Constants │ │ │ └── AltinnObligations.cs │ │ └── Authorization │ │ │ └── IScopeAccessRequirement.cs │ └── UnitTests │ │ └── GlobalSuppressions.cs ├── Functions │ ├── Properties │ │ ├── serviceDependencies.json │ │ └── serviceDependencies.local.json │ ├── Services │ │ └── Interfaces │ │ │ ├── IAccessTokenProvider.cs │ │ │ └── IEventReplayService.cs │ └── Configuration │ │ └── KeyVaultSettings.cs └── Altinn.Authorization.ABAC │ └── Xacml │ └── JsonProfile │ ├── XacmlJsonRequestRoot.cs │ ├── XacmlJsonResponse.cs │ ├── XacmlJsonRequestReference.cs │ ├── XacmlJsonRequests.cs │ ├── XacmlJsonMultiRequests.cs │ └── XacmlJsonStatusCode.cs ├── .dockerignore ├── .justfile └── renovate.json /test/IntegrationTests/Data/Json/DeletePolicies/EmptyInput.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/.gitignore: -------------------------------------------------------------------------------- 1 | # Bruno 2 | .env 3 | local -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/AddRules/EmptyRuleModel.json: -------------------------------------------------------------------------------- 1 | [ 2 | ] 3 | -------------------------------------------------------------------------------- /infrastructure/shared/at21.tfvars: -------------------------------------------------------------------------------- 1 | environment = "at21" 2 | cidr = "10.202.0.0/22" 3 | -------------------------------------------------------------------------------- /infrastructure/shared/at22.tfvars: -------------------------------------------------------------------------------- 1 | environment = "at22" 2 | cidr = "10.202.0.0/22" 3 | -------------------------------------------------------------------------------- /infrastructure/shared/at23.tfvars: -------------------------------------------------------------------------------- 1 | environment = "at23" 2 | cidr = "10.202.0.0/22" 3 | -------------------------------------------------------------------------------- /infrastructure/shared/at24.tfvars: -------------------------------------------------------------------------------- 1 | environment = "at24" 2 | cidr = "10.202.0.0/22" 3 | -------------------------------------------------------------------------------- /infrastructure/shared/provider.tf: -------------------------------------------------------------------------------- 1 | provider "azurerm" { 2 | use_oidc = true 3 | features {} 4 | } 5 | -------------------------------------------------------------------------------- /.github/images/pods.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/pods.png -------------------------------------------------------------------------------- /.github/scripts/.editorconfig: -------------------------------------------------------------------------------- 1 | root = false 2 | 3 | [*] 4 | insert_final_newline = true 5 | tab_width = 2 6 | -------------------------------------------------------------------------------- /.github/images/approved.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/approved.png -------------------------------------------------------------------------------- /.github/containerscan/allowedlist.yaml: -------------------------------------------------------------------------------- 1 | general: 2 | vulnerabilities: 3 | - CVE-2021-24112 4 | - CVE-2019-0820 -------------------------------------------------------------------------------- /.github/images/release-draft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/release-draft.png -------------------------------------------------------------------------------- /.github/images/releasedraft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/releasedraft.png -------------------------------------------------------------------------------- /.github/images/slack-alerts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/slack-alerts.png -------------------------------------------------------------------------------- /infrastructure/modules/nat_gateway/outputs.tf: -------------------------------------------------------------------------------- 1 | output "ip" { 2 | value = azurerm_public_ip.nat_gateway.ip_address 3 | } 4 | -------------------------------------------------------------------------------- /infrastructure/modules/service_bus/outputs.tf: -------------------------------------------------------------------------------- 1 | output "id" { 2 | value = azurerm_servicebus_namespace.service_bus.id 3 | } 4 | -------------------------------------------------------------------------------- /.github/images/ado-prod-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/ado-prod-button.png -------------------------------------------------------------------------------- /.github/images/ado-tt02-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/ado-tt02-button.png -------------------------------------------------------------------------------- /.github/images/awaiting-deploy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/awaiting-deploy.png -------------------------------------------------------------------------------- /.github/images/post-deployment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/post-deployment.png -------------------------------------------------------------------------------- /.github/images/pre-deployment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/pre-deployment.png -------------------------------------------------------------------------------- /.github/images/publishedrelease.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/publishedrelease.png -------------------------------------------------------------------------------- /.github/images/publishrelease.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/publishrelease.png -------------------------------------------------------------------------------- /.github/images/update-apim-prod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/update-apim-prod.png -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IID029Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.rootPolicies=IID029Policy1.xml,IID029Policy2.xml 2 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IID030Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.rootPolicies=IID030Policy1.xml,IID030Policy2.xml 2 | -------------------------------------------------------------------------------- /.github/images/containerapp-props.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/containerapp-props.png -------------------------------------------------------------------------------- /.github/images/failures-in-azure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/failures-in-azure.png -------------------------------------------------------------------------------- /.github/images/pipeline-releases.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/pipeline-releases.png -------------------------------------------------------------------------------- /.github/images/review-deploy-prod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/review-deploy-prod.png -------------------------------------------------------------------------------- /.github/images/review-deploy-tt02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/review-deploy-tt02.png -------------------------------------------------------------------------------- /src/Authorization/Migration/_pre/README.md: -------------------------------------------------------------------------------- 1 | # The `_pre` directory 2 | Pre migration scripts. Executed every time before any version. 3 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/bruno.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1", 3 | "name": "Altinn.Authorization", 4 | "type": "collection" 5 | } -------------------------------------------------------------------------------- /.github/images/awaiting-deploy-tt02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/awaiting-deploy-tt02.png -------------------------------------------------------------------------------- /.github/images/deploy-prod-triggered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/deploy-prod-triggered.png -------------------------------------------------------------------------------- /.github/images/deploy-progress-tt02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/deploy-progress-tt02.png -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IID029Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.rootPolicies=IID029Policy1.xml,IID029Policy2.xml 2 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IID030Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.rootPolicies=IID030Policy1.xml,IID030Policy2.xml 2 | -------------------------------------------------------------------------------- /test/IntegrationTests/platform-org.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/test/IntegrationTests/platform-org.pfx -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIE003Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE003PolicyId1.xml,IIE003PolicyId2.xml 2 | -------------------------------------------------------------------------------- /.github/images/edit-draft-releasenotes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/edit-draft-releasenotes.png -------------------------------------------------------------------------------- /infrastructure/modules/key_vault/outputs.tf: -------------------------------------------------------------------------------- 1 | output "id" { 2 | value = azurerm_key_vault.key_vault.id 3 | description = "value" 4 | } 5 | -------------------------------------------------------------------------------- /src/Authorization/Migration/_erase/README.md: -------------------------------------------------------------------------------- 1 | # The `_erase` directory 2 | Database cleanup scripts. Executed once only when you do `yuniql erase`. -------------------------------------------------------------------------------- /src/Authorization/Migration/_post/README.md: -------------------------------------------------------------------------------- 1 | # The `_post` directory 2 | Post migration scripts. Executed every time and always the last batch to run. -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_2/party_1000/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "regna" 5 | } 6 | ] 7 | 8 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIE001Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE001PolicySetId1.xml,IIE001Policyid1.xml 2 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIE002Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE002PolicyId1.xml,IIE002PolicySetId1.xml 2 | -------------------------------------------------------------------------------- /.github/images/functionapp-deploy-status.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/functionapp-deploy-status.png -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IIE001Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE001PolicySetId1.xml,IIE001Policyid1.xml 2 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IIE002Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE002PolicyId1.xml,IIE002PolicySetId1.xml 2 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IIE003Repository.properties: -------------------------------------------------------------------------------- 1 | xacml.referencedPolicies=IIE003PolicyId1.xml,IIE003PolicyId2.xml 2 | -------------------------------------------------------------------------------- /.github/images/ado-pending-approval-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/ado-pending-approval-screen.png -------------------------------------------------------------------------------- /.github/images/awaiting-deploy-prod-detail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/awaiting-deploy-prod-detail.png -------------------------------------------------------------------------------- /.github/images/awaiting-deploy-tt02-detail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/awaiting-deploy-tt02-detail.png -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | .dockerignore 2 | .env 3 | .git 4 | .gitignore 5 | .vs 6 | .vscode 7 | docker-compose.yml 8 | docker-compose.*.yml 9 | */bin 10 | */obj 11 | -------------------------------------------------------------------------------- /.github/images/containerapp-provision-status.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/.github/images/containerapp-provision-status.png -------------------------------------------------------------------------------- /src/Authorization/Migration/_init/README.md: -------------------------------------------------------------------------------- 1 | # The `_init` directory 2 | Initialization scripts. Executed once. This is called the first time you do `yuniql run`. -------------------------------------------------------------------------------- /src/Authorization/Models/Oed/OedRoleAssignment.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/src/Authorization/Models/Oed/OedRoleAssignment.cs -------------------------------------------------------------------------------- /src/Authorization/Models/Oed/OedRoleAssignments.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/src/Authorization/Models/Oed/OedRoleAssignments.cs -------------------------------------------------------------------------------- /src/Authorization/Constants/AltinnXacmlConstants.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/src/Authorization/Constants/AltinnXacmlConstants.cs -------------------------------------------------------------------------------- /test/IntegrationTests/selfSignedTestCertificate.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/test/IntegrationTests/selfSignedTestCertificate.pfx -------------------------------------------------------------------------------- /src/Authorization/Models/Oed/OedRoleAssignmentRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/src/Authorization/Models/Oed/OedRoleAssignmentRequest.cs -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/PROD.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.altinn.no 3 | apimSubscriptionKey: {{process.env.PROD_APIM_SUBSCRIPTION_KEY}} 4 | } 5 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/SKDMissingAppRequest.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "SKD" 6 | } 7 | ] 8 | ] -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/SKDMissingOrgRequest.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:app", 5 | "value": "TaxReport2" 6 | } 7 | ] 8 | ] -------------------------------------------------------------------------------- /src/Authorization/Services/Interface/IOedRoleAssignmentWrapper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/src/Authorization/Services/Interface/IOedRoleAssignmentWrapper.cs -------------------------------------------------------------------------------- /infrastructure/shared/README.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## Network Address Ranges 4 | * Full Address Space for Authorization 10.202.0.0/20 5 | * 10.202.0.0/22 6 | * 10.202.4.0/22 7 | * 10.202.8.0/22 8 | * 10.202.12.0/22 -------------------------------------------------------------------------------- /test/K6/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/prettierrc", 3 | "trailingComma": "all", 4 | "tabWidth": 2, 5 | "semi": true, 6 | "singleQuote": true, 7 | "printWidth": 160 8 | } 9 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/PIP.txt: -------------------------------------------------------------------------------- 1 | urn:oasis:names:tc:xacml:1.0:subject-category:access-subject|urn:oasis:names:tc:xacml:1.0:example:attribute:role|http://www.w3.org/2001/XMLSchema#string|Physician 2 | -------------------------------------------------------------------------------- /src/Authorization/Migration/v0.05/01-setup-tables.sql: -------------------------------------------------------------------------------- 1 | -- Enum: update delegation.delegationChangeType rename revokelast -> revoke_last 2 | ALTER TYPE delegation.delegationchangetype RENAME VALUE 'revokelast' TO 'revoke_last' 3 | -------------------------------------------------------------------------------- /src/Authorization/appsettings.Staging.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Debug", 5 | "System": "Information", 6 | "Microsoft": "Information" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_20000095/party_50004222/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "dagl" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "apiadm" 9 | } 10 | ] -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_20000490/party_50005545/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "dagl" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "apiadm" 9 | } 10 | ] -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/PIP.txt: -------------------------------------------------------------------------------- 1 | urn:oasis:names:tc:xacml:1.0:subject-category:access-subject|urn:oasis:names:tc:xacml:1.0:example:attribute:role|http://www.w3.org/2001/XMLSchema#string|Physician 2 | -------------------------------------------------------------------------------- /test/K6/src/data/testdata/prodtestdata.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": "prod", 3 | "org": "ttd", 4 | "app": "apps-test-prod", 5 | "authorizationTests": { 6 | "user": "InstallationTest_prod_auto" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/Authorization/Migration/_draft/README.md: -------------------------------------------------------------------------------- 1 | # The `_draft` directory 2 | Scripts in progress. Scripts that you are currently working and have not moved to specific version directory yet. Executed every time after the latest version. -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/Altinn.Common.PEP/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Debug", 5 | "System": "Information", 6 | "Microsoft": "Information" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/DEV.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: http://localhost:5050 3 | tokenEnv: at22 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | } 7 | -------------------------------------------------------------------------------- /src/Functions/Properties/serviceDependencies.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "appInsights1": { 4 | "type": "appInsights" 5 | }, 6 | "storage1": { 7 | "type": "storage", 8 | "connectionId": "AzureWebJobsStorage" 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/Org2App1Request.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "org2" 6 | }, 7 | { 8 | "id": "urn:altinn:app", 9 | "value": "app1" 10 | } 11 | ] 12 | ] 13 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/Org2App2Request.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "org2" 6 | }, 7 | { 8 | "id": "urn:altinn:app", 9 | "value": "app2" 10 | } 11 | ] 12 | ] 13 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/SKDInvalidAppRequest.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "SKD" 6 | }, 7 | { 8 | "id": "urn:altinn:app", 9 | "value": "InvalidApp" 10 | } 11 | ] 12 | ] -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/SKDTaxReport2Request.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "skd" 6 | }, 7 | { 8 | "id": "urn:altinn:app", 9 | "value": "taxreport2" 10 | } 11 | ] 12 | ] -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetResourcePolicies/SKDUndefinedRequest.json: -------------------------------------------------------------------------------- 1 | [ 2 | [ 3 | { 4 | "id": "urn:altinn:org", 5 | "value": "skd" 6 | }, 7 | { 8 | "id": "urn:altinn:app", 9 | "value": "undefined" 10 | } 11 | ] 12 | ] -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/.env.sample: -------------------------------------------------------------------------------- 1 | TOKEN_BASIC_AUTH_USER= 2 | TOKEN_BASIC_AUTH_PW= 3 | 4 | AT22_APIM_SUBSCRIPTION_KEY= 5 | AT23_APIM_SUBSCRIPTION_KEY= 6 | AT24_APIM_SUBSCRIPTION_KEY= 7 | YT01_APIM_SUBSCRIPTION_KEY= 8 | TT02_APIM_SUBSCRIPTION_KEY= 9 | PROD_APIM_SUBSCRIPTION_KEY= -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_OedFormuesfullmakt_Xml_PermitResponse.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_OedFormuesfullmakt_Xml_PermitResponse.xml -------------------------------------------------------------------------------- /infrastructure/modules/postgres_database/variables.tf: -------------------------------------------------------------------------------- 1 | 2 | variable "resource_group_name" { 3 | type = string 4 | } 5 | 6 | variable "postgres_server_name" { 7 | type = string 8 | } 9 | 10 | variable "database_name" { 11 | type = string 12 | nullable = false 13 | } 14 | -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/Altinn.Common.PEP/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft": "Warning", 6 | "Microsoft.Hosting.Lifetime": "Information" 7 | } 8 | }, 9 | "AllowedHosts": "*" 10 | } 11 | -------------------------------------------------------------------------------- /src/Functions/Properties/serviceDependencies.local.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "appInsights1": { 4 | "type": "appInsights.sdk" 5 | }, 6 | "storage1": { 7 | "type": "storage.emulator", 8 | "connectionId": "AzureWebJobsStorage" 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_1/party_1000/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "regna" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "dagl" 9 | }, 10 | 11 | { 12 | "Type": "altinn", 13 | "value": "apiadm" 14 | } 15 | ] 16 | 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_OedFormuesfullmakt_Xml_IndeterminateResponse.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/altinn/altinn-authorization/main/test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_OedFormuesfullmakt_Xml_IndeterminateResponse.xml -------------------------------------------------------------------------------- /test/K6/.yarnrc.yml: -------------------------------------------------------------------------------- 1 | enableMessageNames: false 2 | 3 | enableTelemetry: false 4 | 5 | nodeLinker: node-modules 6 | 7 | plugins: 8 | - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs 9 | spec: "@yarnpkg/plugin-interactive-tools" 10 | 11 | yarnPath: .yarn/releases/yarn-4.5.1.cjs 12 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IIA001Response.json: -------------------------------------------------------------------------------- 1 | { 2 | "Response": [ 3 | { 4 | "Decision": "Permit", 5 | "Status": { 6 | "StatusCode": { 7 | "Value": "urn:oasis:names:tc:xacml:1.0:status:ok" 8 | } 9 | } 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /src/Authorization/Migration/v0.00/03-setup-grants.sql: -------------------------------------------------------------------------------- 1 | GRANT USAGE ON SCHEMA delegation TO platform_authorization; 2 | GRANT SELECT,INSERT,UPDATE,REFERENCES,DELETE,TRUNCATE,TRIGGER ON ALL TABLES IN SCHEMA delegation TO platform_authorization; 3 | GRANT ALL ON ALL SEQUENCES IN SCHEMA delegation TO platform_authorization; 4 | -------------------------------------------------------------------------------- /src/Authorization/Migration/v0.06/03-setup-grants.sql: -------------------------------------------------------------------------------- 1 | GRANT USAGE ON SCHEMA delegation TO platform_authorization; 2 | GRANT SELECT,INSERT,UPDATE,REFERENCES,DELETE,TRUNCATE,TRIGGER ON ALL TABLES IN SCHEMA delegation TO platform_authorization; 3 | GRANT ALL ON ALL SEQUENCES IN SCHEMA delegation TO platform_authorization; 4 | -------------------------------------------------------------------------------- /infrastructure/shared/variables.tf: -------------------------------------------------------------------------------- 1 | variable "location" { 2 | type = string 3 | default = "norwayeast" 4 | } 5 | 6 | variable "instance" { 7 | type = string 8 | default = "001" 9 | } 10 | 11 | variable "environment" { 12 | type = string 13 | } 14 | 15 | variable "cidr" { 16 | type = string 17 | } 18 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/TT02.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.tt02.altinn.no 3 | tokenEnv: tt02 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | apimSubscriptionKey: {{process.env.TT02_APIM_SUBSCRIPTION_KEY}} 7 | } 8 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/AT22.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.at22.altinn.cloud 3 | tokenEnv: at22 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | apimSubscriptionKey: {{process.env.AT22_APIM_SUBSCRIPTION_KEY}} 7 | } 8 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/AT23.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.at23.altinn.cloud 3 | tokenEnv: at23 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | apimSubscriptionKey: {{process.env.AT23_APIM_SUBSCRIPTION_KEY}} 7 | } 8 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/AT24.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.at24.altinn.cloud 3 | tokenEnv: at24 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | apimSubscriptionKey: {{process.env.AT24_APIM_SUBSCRIPTION_KEY}} 7 | } 8 | -------------------------------------------------------------------------------- /test/Bruno/Altinn.Authorization/environments/YT01.bru: -------------------------------------------------------------------------------- 1 | vars { 2 | baseUrl: https://platform.yt01.altinn.cloud 3 | tokenEnv: at22 4 | tokenBasicAuthUser: {{process.env.TOKEN_BASIC_AUTH_USER}} 5 | tokenBasicAuthPw: {{process.env.TOKEN_BASIC_AUTH_PW}} 6 | apimSubscriptionKey: {{process.env.YT01_APIM_SUBSCRIPTION_KEY}} 7 | } 8 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/AltinnResourceRegistry0007Response.json: -------------------------------------------------------------------------------- 1 | { 2 | "Response": [ 3 | { 4 | "Decision": "NotApplicable", 5 | "Status": { 6 | "StatusCode": { 7 | "Value": "urn:oasis:names:tc:xacml:1.0:status:ok" 8 | } 9 | } 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/AltinnResourceRegistry0008Response.json: -------------------------------------------------------------------------------- 1 | { 2 | "Response": [ 3 | { 4 | "Decision": "NotApplicable", 5 | "Status": { 6 | "StatusCode": { 7 | "Value": "urn:oasis:names:tc:xacml:1.0:status:ok" 8 | } 9 | } 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/AltinnResourceRegistry0010Response.json: -------------------------------------------------------------------------------- 1 | { 2 | "Response": [ 3 | { 4 | "Decision": "NotApplicable", 5 | "Status": { 6 | "StatusCode": { 7 | "Value": "urn:oasis:names:tc:xacml:1.0:status:ok" 8 | } 9 | } 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /infrastructure/modules/postgres_server/outputs.tf: -------------------------------------------------------------------------------- 1 | output "id" { 2 | value = azurerm_key_vault_key.postgres_server.id 3 | description = "Postgres Flexible server AzureRM ID" 4 | } 5 | 6 | output "admin" { 7 | value = azurerm_user_assigned_identity.postgres_server_admin.id 8 | description = "Managed Identity AzureRM ID" 9 | } 10 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_1337/party_500800/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "MEDL" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "REGNA" 9 | }, 10 | { 11 | "Type": "altinn", 12 | "value": "UTINN" 13 | }, 14 | { 15 | "Type": "altinn", 16 | "value": "UTOMR" 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_1337/party_500801/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "MEDL" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "REGNA" 9 | }, 10 | { 11 | "Type": "altinn", 12 | "value": "UTINN" 13 | }, 14 | { 15 | "Type": "altinn", 16 | "value": "UTOMR" 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_1337/party_500802/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "MEDL" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "REGNA" 9 | }, 10 | { 11 | "Type": "altinn", 12 | "value": "UTINN" 13 | }, 14 | { 15 | "Type": "altinn", 16 | "value": "UTOMR" 17 | } 18 | ] 19 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/task.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: 🛠️ Task 3 | about: 'Et konkret stykke arbeid som skal gjøres' 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | --- 8 | 9 | # Beskrivelse 10 | 11 | 12 | 13 | # To do's 14 | 15 | 16 | 17 | - [ ] Eks: Ta ut av oppvaskmaskinen 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500000.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500000", 3 | "partyTypeName": 2, 4 | "orgNumber": "897069650", 5 | "ssn": null, 6 | "unitType": "AS", 7 | "name": "DDG Fitness", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/501337.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "501337", 3 | "partyTypeName": 1, 4 | "orgNumber": null, 5 | "ssn": "01039012345", 6 | "unitType": null, 7 | "name": "Sophie Salt", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/512345.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "512345", 3 | "partyTypeName": 1, 4 | "orgNumber": null, 5 | "ssn": "01017512345", 6 | "unitType": null, 7 | "name": "Ola Nordmann", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /src/Authorization/Models/ResourceRegistry/ResourceAccessListMode.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Authorization.Models.ResourceRegistry; 2 | 3 | /// 4 | /// Enum representation of the different types of ResourceAccessListModes supported by the resource registry 5 | /// 6 | public enum ResourceAccessListMode 7 | { 8 | Disabled = 0, 9 | 10 | Enabled = 1 11 | } 12 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500001.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500001", 3 | "partyTypeName": 2, 4 | "orgNumber": "897069651", 5 | "ssn": null, 6 | "unitType": "BEDR", 7 | "name": "DDG Fitness Oslo", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500002.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500002", 3 | "partyTypeName": 2, 4 | "orgNumber": "897069652", 5 | "ssn": null, 6 | "unitType": "BEDR", 7 | "name": "DDG Fitness Bergen", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500600.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500600", 3 | "partyTypeName": 2, 4 | "orgNumber": "897069631", 5 | "ssn": null, 6 | "unitType": "AS", 7 | "name": "EAS Health Consulting", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /infrastructure/modules/vnet/variables.tf: -------------------------------------------------------------------------------- 1 | variable "metadata" { 2 | type = object({ 3 | name = string 4 | environment = string 5 | instance = string 6 | suffix = string 7 | default_tags = map(string) 8 | }) 9 | } 10 | 11 | variable "resource_group_name" { 12 | type = string 13 | } 14 | 15 | variable "cidr" { 16 | type = string 17 | } 18 | -------------------------------------------------------------------------------- /src/Authorization/Migration/v0.02/01-configure-functions.sql: -------------------------------------------------------------------------------- 1 | ALTER FUNCTION delegation.get_all_current_changes 2 | STABLE PARALLEL SAFE; 3 | 4 | ALTER FUNCTION delegation.get_all_changes 5 | STABLE PARALLEL SAFE; 6 | 7 | ALTER FUNCTION delegation.get_current_change 8 | STABLE PARALLEL SAFE 9 | ROWS 1; -- This function always return a single row, so hint this to the optimizer 10 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500003.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500003", 3 | "partyTypeName": 2, 4 | "orgNumber": "897069653", 5 | "ssn": null, 6 | "unitType": "BEDR", 7 | "name": "DDG Fitness Trondheim", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500700.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500700", 3 | "partyTypeName": 2, 4 | "orgNumber": "950474084", 5 | "ssn": null, 6 | "unitType": "BRL", 7 | "name": "Oslos Vakreste Borettslag", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /infrastructure/modules/dns/variables.tf: -------------------------------------------------------------------------------- 1 | variable "metadata" { 2 | type = object({ 3 | name = string 4 | environment = string 5 | instance = string 6 | suffix = string 7 | default_tags = map(string) 8 | }) 9 | } 10 | 11 | variable "resource_group_name" { 12 | type = string 13 | } 14 | 15 | variable "vnet_id" { 16 | type = string 17 | } 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500800.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500800", 3 | "partyTypeName": 2, 4 | "orgNumber": "910457292", 5 | "ssn": null, 6 | "unitType": "AS", 7 | "name": "EAS Health Consulting Sortland", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500802.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500802", 3 | "partyTypeName": 2, 4 | "orgNumber": "910423495", 5 | "ssn": null, 6 | "unitType": "AS", 7 | "name": "EAS Health Consulting Svolvær", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /src/Authorization/Migration/v0.04/03-setup-grants.sql: -------------------------------------------------------------------------------- 1 | -- Grants for platform_authorization must be executed again for new sequence (Enum) and since delegationChanges table has been drop/created 2 | GRANT SELECT,INSERT,UPDATE,REFERENCES,DELETE,TRUNCATE,TRIGGER ON ALL TABLES IN SCHEMA delegation TO platform_authorization; 3 | GRANT ALL ON ALL SEQUENCES IN SCHEMA delegation TO platform_authorization; 4 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/500801.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "500801", 3 | "partyTypeName": 2, 4 | "orgNumber": "910471120", 5 | "ssn": null, 6 | "unitType": "AS", 7 | "name": "EAS Health Consulting Stokmarknes", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /.justfile: -------------------------------------------------------------------------------- 1 | [private] 2 | @default: 3 | just --list 4 | 5 | # Install node packages required to run scripts - uses pnpm to install the packages 6 | [private] 7 | @install-script-packages: 8 | #!pwsh 9 | pushd .github/scripts 10 | pnpm install 11 | 12 | [private] 13 | @install-script-packages-frozen: 14 | #!pwsh 15 | pushd .github/scripts 16 | pnpm install --frozen-lockfile 17 | 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/510003.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "510003", 3 | "partyTypeName": 1, 4 | "orgNumber": null, 5 | "ssn": "08829698278", 6 | "unitType": null, 7 | "name": "Rik Forelder", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/510001.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "510001", 3 | "partyTypeName": 1, 4 | "orgNumber": null, 5 | "ssn": "01899699552", 6 | "unitType": null, 7 | "name": "Pengelens Partner", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/510002.json: -------------------------------------------------------------------------------- 1 | { 2 | "partyId": "510002", 3 | "partyTypeName": 1, 4 | "orgNumber": null, 5 | "ssn": "17858296439", 6 | "unitType": null, 7 | "name": "Gjentagende Forelder", 8 | "isDeleted": false, 9 | "onlyHierarchyElementWithNoAccess": false, 10 | "person": null, 11 | "organisation": null, 12 | "childParties": null 13 | } 14 | -------------------------------------------------------------------------------- /infrastructure/modules/dns/outputs.tf: -------------------------------------------------------------------------------- 1 | output "zones" { 2 | value = { for key, value in local.zones : key => 3 | { 4 | id = azurerm_private_dns_zone.dns[key].id 5 | name = value 6 | } 7 | } 8 | 9 | description = "Map of all private link DNS zones. The keys are the resource type name. e.g service_bus. Value contains the fields 'id' which is the ARM reference and name the domain" 10 | } 11 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "extends": [ 4 | "local>Altinn/renovate-config" 5 | ], 6 | "packageRules": [ 7 | { 8 | "matchPackageNames": [ 9 | "Altinn.Common.AccessTokenClient" 10 | ], 11 | "matchFileNames": [ 12 | "src/Functions/**" 13 | ], 14 | "allowedVersions": "<=1.1.3" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/Altinn.Common.PEP/Configuration/PepSettings.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Common.PEP.Configuration 2 | { 3 | /// 4 | /// General configuration settings 5 | /// 6 | public class PepSettings 7 | { 8 | /// 9 | /// The timout on pdp decions 10 | /// 11 | public int PdpDecisionCachingTimeout { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Roles/user_1337/party_500700/roles.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Type": "altinn", 4 | "value": "MEDL" 5 | }, 6 | { 7 | "Type": "altinn", 8 | "value": "REGNA" 9 | }, 10 | { 11 | "Type": "altinn", 12 | "value": "UTINN" 13 | }, 14 | { 15 | "Type": "altinn", 16 | "value": "UTOMR" 17 | }, 18 | { 19 | "Type": "altinn", 20 | "value": "apiadm" 21 | } 22 | ] 23 | -------------------------------------------------------------------------------- /src/Authorization/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Debug", 5 | "System": "Information", 6 | "Microsoft": "Information" 7 | } 8 | }, 9 | "TokenGeneratorSettings": { 10 | "Url": "https://altinn-testtools-token-generator.azurewebsites.net/api/GetPlatformAccessToken", 11 | "User": "", 12 | "Password": "", 13 | "Env": "at22" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /test/K6/.gitignore: -------------------------------------------------------------------------------- 1 | **/data/*.txt 2 | **/data/users*.json 3 | **/data/*.csv 4 | **/data/xml*.xml 5 | 6 | #Junit reports 7 | **/reports/ 8 | 9 | #Logs 10 | **/logs/ 11 | 12 | #Dependency directories 13 | node_modules/ 14 | 15 | #https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored 16 | /.pnp.* 17 | /.yarn/* 18 | !/.yarn/patches 19 | !/.yarn/plugins 20 | !/.yarn/releases 21 | !/.yarn/sdks 22 | !/.yarn/versions 23 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/AccessListAuthorization/Permit_WithoutActionFilter_Request.json: -------------------------------------------------------------------------------- 1 | { 2 | "subject": { 3 | "type": "urn:altinn:organization:identifier-no", 4 | "value": "910459880" 5 | }, 6 | "resource": { 7 | "type": "urn:altinn:resource", 8 | "value": "ttd-accesslist-resource" 9 | }, 10 | "action": { 11 | "type": "urn:oasis:names:tc:xacml:1.0:action:action-id", 12 | "value": "whatever" 13 | } 14 | } -------------------------------------------------------------------------------- /.github/scripts/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "scripts", 3 | "version": "0.0.0", 4 | "description": "", 5 | "keywords": [], 6 | "author": "", 7 | "private": true, 8 | "devDependencies": { 9 | "@octokit/action": "^7.0.0", 10 | "@types/node": "^22.0.0", 11 | "chalk": "^5.3.0", 12 | "globby": "^14.0.1", 13 | "tsx": "^4.7.1", 14 | "typescript": "^5.4.3", 15 | "zx": "^8.0.0" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /infrastructure/modules/nat_gateway/variables.tf: -------------------------------------------------------------------------------- 1 | variable "metadata" { 2 | type = object({ 3 | name = string 4 | environment = string 5 | instance = string 6 | suffix = string 7 | default_tags = map(string) 8 | }) 9 | } 10 | 11 | variable "resource_group_name" { 12 | type = string 13 | } 14 | 15 | variable "subnets" { 16 | type = map(object({ 17 | id = string 18 | name = string 19 | })) 20 | } 21 | -------------------------------------------------------------------------------- /test/K6/src/data/pdpinput.json: -------------------------------------------------------------------------------- 1 | { 2 | "Request": { 3 | "ReturnPolicyIdList": false, 4 | "AccessSubject": [ 5 | { 6 | "Attribute": [ 7 | ] 8 | } 9 | ], 10 | "Action": [ 11 | { 12 | "Attribute": [ 13 | ] 14 | } 15 | ], 16 | "Resource": [ 17 | { 18 | "Attribute": [ 19 | ] 20 | } 21 | ] 22 | } 23 | } -------------------------------------------------------------------------------- /infrastructure/modules/key_vault/variables.tf: -------------------------------------------------------------------------------- 1 | variable "metadata" { 2 | type = object({ 3 | name = string 4 | environment = string 5 | instance = string 6 | suffix = string 7 | default_tags = map(string) 8 | }) 9 | } 10 | 11 | variable "resource_group_name" { 12 | type = string 13 | } 14 | 15 | variable "subnet_id" { 16 | type = string 17 | } 18 | 19 | variable "dns_zones" { 20 | type = list(string) 21 | } 22 | -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonRequestRoot.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 2 | { 3 | /// 4 | /// The JSON object root needed to be able to parse the request. 5 | /// 6 | public class XacmlJsonRequestRoot 7 | { 8 | /// 9 | /// Gets or sets the request. 10 | /// 11 | public XacmlJsonRequest Request { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /.github/workflows/assign-issues-to-projects.yml: -------------------------------------------------------------------------------- 1 | name: Auto Assign to Project 2 | 3 | on: 4 | issues: 5 | types: 6 | - opened 7 | 8 | jobs: 9 | add-to-project: 10 | name: Add issue to Team Authorization project 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/add-to-project@main 14 | with: 15 | project-url: https://github.com/orgs/Altinn/projects/50 16 | github-token: ${{ secrets.ASSIGN_PROJECT_TOKEN }} 17 | -------------------------------------------------------------------------------- /src/Authorization/Models/ResourceRegistry/Keyword.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Authorization.Models.ResourceRegistry; 2 | 3 | /// 4 | /// Model for defining keywords 5 | /// 6 | public class Keyword 7 | { 8 | /// 9 | /// The key word 10 | /// 11 | public string Word { get; set; } 12 | 13 | /// 14 | /// Language of the key word 15 | /// 16 | public string Language { get; set; } 17 | } 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/AccessListAuthorization/Permit_WithoutActionFilter_Response.json: -------------------------------------------------------------------------------- 1 | { 2 | "subject": { 3 | "type": "urn:altinn:organization:identifier-no", 4 | "value": "910459880" 5 | }, 6 | "resource": { 7 | "type": "urn:altinn:resource", 8 | "value": "ttd-accesslist-resource" 9 | }, 10 | "action": { 11 | "type": "urn:oasis:names:tc:xacml:1.0:action:action-id", 12 | "value": "whatever" 13 | }, 14 | "result": "Authorized" 15 | } -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonRequestRootExternal.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Platform.Authorization.Models.External 2 | { 3 | /// 4 | /// The JSON object root needed to be able to parse the request. 5 | /// 6 | public class XacmlJsonRequestRootExternal 7 | { 8 | /// 9 | /// Gets or sets the request. 10 | /// 11 | public XacmlJsonRequestExternal Request { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonResponse.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 4 | { 5 | /// 6 | /// The JSON Response. 7 | /// 8 | public class XacmlJsonResponse 9 | { 10 | /// 11 | /// Gets or sets a list over JSON XACML results. 12 | /// 13 | public List Response { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/Altinn.Common.PEP/Constants/AltinnObligations.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Common.PEP.Constants 2 | { 3 | /// 4 | /// Represents a set of Obligation values 5 | /// 6 | public static class AltinnObligations 7 | { 8 | /// 9 | /// Get the name of the obligation authentication level. 10 | /// 11 | public const string RequiredAuthenticationLevel = "RequiredAuthenticationLevel"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonRequestReference.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 4 | { 5 | /// 6 | /// JSON object for request references. 7 | /// 8 | public class XacmlJsonRequestReference 9 | { 10 | /// 11 | /// Gets or sets the reference Id. 12 | /// 13 | public List ReferenceId { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonRequestReferenceExternal.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Platform.Authorization.Models.External 4 | { 5 | /// 6 | /// JSON object for request references. 7 | /// 8 | public class XacmlJsonRequestReferenceExternal 9 | { 10 | /// 11 | /// Gets or sets the reference Id. 12 | /// 13 | public List ReferenceId { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonRequests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 6 | { 7 | /// 8 | /// Defines a list of json request 9 | /// 10 | public class XacmlJsonRequests 11 | { 12 | /// 13 | /// A list of requests 14 | /// 15 | public List Requests { get; set; } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_NoRulesRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 0, 3 | "keyRolePartyIds": [ 4 | 5 | ], 6 | "offeredByPartyId": 50001337, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "SKD" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "TaxReport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001338" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_SuccessRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 0, 3 | "keyRolePartyIds": [ 4 | 0 5 | ], 6 | "offeredByPartyId": 50001337, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "skd" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "taxreport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001336" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /src/Functions/Services/Interfaces/IAccessTokenProvider.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace Altinn.Platform.Authorization.Functions.Services.Interfaces; 4 | 5 | /// 6 | /// Provides an access token that can be used by HTTP clients 7 | /// 8 | public interface IAccessTokenProvider 9 | { 10 | /// 11 | /// Gets the access token. 12 | /// 13 | /// An access token as a printable string 14 | public Task GetAccessToken(); 15 | } 16 | -------------------------------------------------------------------------------- /src/Authorization/Helpers/ServiceResourceHelper.cs: -------------------------------------------------------------------------------- 1 | using System.Text.RegularExpressions; 2 | 3 | namespace Altinn.Authorization.Helpers 4 | { 5 | /// 6 | /// ServiceResource helper methods 7 | /// 8 | public static partial class ServiceResourceHelper 9 | { 10 | /// 11 | /// Resource identifier regex. 12 | /// 13 | [GeneratedRegex("^[a-z0-9_-]{4,}$")] 14 | internal static partial Regex ResourceIdentifierRegex(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonRequestsExternal.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | 5 | namespace Altinn.Platform.Authorization.Models.External 6 | { 7 | /// 8 | /// Defines a list of json request 9 | /// 10 | public class XacmlJsonRequestsExternal 11 | { 12 | /// 13 | /// A list of requests 14 | /// 15 | public List Requests { get; set; } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /test/Functions/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. 3 | // Project-level suppressions either have no target or are given 4 | // a specific target and scoped to a namespace, type, member, etc. 5 | 6 | using System.Diagnostics.CodeAnalysis; 7 | 8 | [assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1600:Elements should be documented", Justification = "Test description should be in the name of the test.", Scope = "module")] 9 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_MissingOfferedByInRequestRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 0, 3 | "keyRolePartyIds": [ 4 | 0 5 | ], 6 | "offeredByPartyId": 0, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "SKD" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "TaxReport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001336" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_MissingValuesInRequestRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 50001336, 3 | "keyRolePartyIds": [ 4 | 5 | ], 6 | "offeredByPartyId": 50001337, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "SKD" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:partyid", 22 | "value": "50001341" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IID029Special.txt: -------------------------------------------------------------------------------- 1 | Test IID029 applies only to PDPs that retrieve their initial 2 | policies from a repository, where multiple initial policies might 3 | be obtained based on matching. IID029Policy1.xml and 4 | IID029Policy2.xml must be stored in the repository, such that 5 | both policies will be considered for application to the Request 6 | in IID029Request.xml. 7 | 8 | Any PDP that has only one initial policy, regardless of the 9 | Request, does not need to pass this test. 10 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IID030Special.txt: -------------------------------------------------------------------------------- 1 | Test IID030 applies only to PDPs that retrieve their initial 2 | policies from a repository, where multiple initial policies might 3 | be obtained based on matching. IID030Policy1.xml and 4 | IID030Policy2.xml must be stored in the repository, such that 5 | both policies will be considered for application to the Request 6 | in IID030Request.xml. 7 | 8 | Any PDP that has only one initial policy, regardless of the 9 | Request, does not need to pass this test. 10 | -------------------------------------------------------------------------------- /test/UnitTest/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. 3 | // Project-level suppressions either have no target or are given 4 | // a specific target and scoped to a namespace, type, member, etc. 5 | 6 | using System.Diagnostics.CodeAnalysis; 7 | 8 | [assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1600:Elements should be documented", Justification = "Test description should be in the name of the test.", Scope = "module")] 9 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IID029Special.txt: -------------------------------------------------------------------------------- 1 | Test IID029 applies only to PDPs that retrieve their initial 2 | policies from a repository, where multiple initial policies might 3 | be obtained based on matching. IID029Policy1.xml and 4 | IID029Policy2.xml must be stored in the repository, such that 5 | both policies will be considered for application to the Request 6 | in IID029Request.xml. 7 | 8 | Any PDP that has only one initial policy, regardless of the 9 | Request, does not need to pass this test. 10 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IID030Special.txt: -------------------------------------------------------------------------------- 1 | Test IID030 applies only to PDPs that retrieve their initial 2 | policies from a repository, where multiple initial policies might 3 | be obtained based on matching. IID030Policy1.xml and 4 | IID030Policy2.xml must be stored in the repository, such that 5 | both policies will be considered for application to the Request 6 | in IID030Request.xml. 7 | 8 | Any PDP that has only one initial policy, regardless of the 9 | Request, does not need to pass this test. 10 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/blobs/input/org1/app5/50001337/u20001337/delegationpolicy.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Delegation policy containing all delegated rights/actions from 50001337 to 20001337, for resources on the app; org1/app5 4 | 5 | 6 | -------------------------------------------------------------------------------- /test/IntegrationTests/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. 3 | // Project-level suppressions either have no target or are given 4 | // a specific target and scoped to a namespace, type, member, etc. 5 | 6 | using System.Diagnostics.CodeAnalysis; 7 | 8 | [assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1600:Elements should be documented", Justification = "Test description should be in the name of the test.", Scope = "module")] 9 | -------------------------------------------------------------------------------- /src/Authorization/Models/MainUnitQuery.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Platform.Authorization.Models 4 | { 5 | /// 6 | /// Input Model used by SBL Bridge partyparents endpoint, for listing the subunit partyIds to retrieve mainunit information for. 7 | /// 8 | public class MainUnitQuery 9 | { 10 | /// 11 | /// Gets or sets the PartyId of the main unit 12 | /// 13 | public List PartyIds { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_UsingkeyRolePartyIdsRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 0, 3 | "keyRolePartyIds": [ 4 | 50001336 5 | ], 6 | "offeredByPartyId": 50001337, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "skd" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "taxreport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001336" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIICSpecial.txt: -------------------------------------------------------------------------------- 1 | Test IIIC001, 002, and 003 use hierarchical resources. 2 | 3 | The root resource is identified by "urn:root" and 4 | has two child resources identified by 5 | "urn:root:child1" and "urn:root:child2". 6 | 7 | The first child resource has two child resources identified by 8 | "urn:root:child1:descendant1" and "urn:root:child1:descendant2". 9 | 10 | The second child resource has two child resources identified by 11 | "urn:root:child2:descendant1" and "urn:root:child2:descendant2". 12 | -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/UnitTests/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. 3 | // Project-level suppressions either have no target or are given 4 | // a specific target and scoped to a namespace, type, member, etc. 5 | 6 | using System.Diagnostics.CodeAnalysis; 7 | 8 | [assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1600:Elements should be documented", Justification = "Test description should be in the name of the test.", Scope = "module")] 9 | -------------------------------------------------------------------------------- /src/Functions/Services/Interfaces/IEventReplayService.cs: -------------------------------------------------------------------------------- 1 | using System.Threading.Tasks; 2 | 3 | namespace Altinn.Platform.Authorization.Functions.Services.Interfaces; 4 | 5 | /// 6 | /// The service uses to call platform authorization to trigger replay of events 7 | /// 8 | public interface IEventReplayService 9 | { 10 | /// 11 | /// Calls the platform authorization API for replaying events from the database to the event queue 12 | /// 13 | Task ReplayEvents(int startId, int endId); 14 | } 15 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_RuleTypeInheritedAsSubunitRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 50001338, 3 | "keyRolePartyIds": [ 4 | 5 | ], 6 | "offeredByPartyId": 50001399, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "skd" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "taxreport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:partyid", 22 | "value": "50001336" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_RuleTypeInheritedViaKeyRoleRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 0, 3 | "keyRolePartyIds": [ 4 | 50001338 5 | ], 6 | "offeredByPartyId": 50001337, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "skd" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "taxreport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001335" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonMultiRequests.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 4 | { 5 | /// 6 | /// A JSON object that defines references to multiple requests. 7 | /// 8 | public class XacmlJsonMultiRequests 9 | { 10 | /// 11 | /// Gets or sets the request reference. 12 | /// 13 | public List RequestReference { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ConformanceTests/IIICSpecial.txt: -------------------------------------------------------------------------------- 1 | Test IIIC001, 002, and 003 use hierarchical resources. 2 | 3 | The root resource is identified by "urn:root" and 4 | has two child resources identified by 5 | "urn:root:child1" and "urn:root:child2". 6 | 7 | The first child resource has two child resources identified by 8 | "urn:root:child1:descendant1" and "urn:root:child1:descendant2". 9 | 10 | The second child resource has two child resources identified by 11 | "urn:root:child2:descendant1" and "urn:root:child2:descendant2". 12 | -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonMultiRequestsExternal.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Platform.Authorization.Models.External 4 | { 5 | /// 6 | /// A JSON object that defines references to multiple requests. 7 | /// 8 | public class XacmlJsonMultiRequestsExternal 9 | { 10 | /// 11 | /// Gets or sets the request reference. 12 | /// 13 | public List RequestReference { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Functions/Configuration/KeyVaultSettings.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Platform.Authorization.Functions.Configuration; 2 | 3 | /// 4 | /// Configuration object used to hold settings for the KeyVault. 5 | /// 6 | public class KeyVaultSettings 7 | { 8 | /// 9 | /// Uri to keyvault 10 | /// 11 | public string KeyVaultUri { get; set; } 12 | 13 | /// 14 | /// Name of the certificate secret 15 | /// 16 | public string PlatformCertSecretId { get; set; } = "JWTCertificate"; 17 | } 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/GetRules/GetRules_RuleTypeInheritedAsSubunitViaKeyroleRequest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parentPartyId": 50001335, 3 | "keyRolePartyIds": [ 4 | 50001337 5 | ], 6 | "offeredByPartyId": 50001339, 7 | "resources": [ 8 | [ 9 | { 10 | "id": "urn:altinn:org", 11 | "value": "skd" 12 | }, 13 | { 14 | "id": "urn:altinn:app", 15 | "value": "taxreport" 16 | } 17 | ] 18 | ], 19 | "coveredBy": [ 20 | { 21 | "id": "urn:altinn:userid", 22 | "value": "20001336" 23 | } 24 | ] 25 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/897069650.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "897069650", 3 | "Name": "DDG Fitness", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "central@ddgfitness.no", 9 | "InternetAddress": "http://ddgfitness.no", 10 | "MailingAddress": "Sofies Gate 1", 11 | "MailingPostalCode": "0170", 12 | "MailingPostalCity": "Oslo", 13 | "BusinessAddress": "Sofies Gate 1", 14 | "BusinessPostalCode": "0170", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/900000001.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "900000001", 3 | "Name": "Kari Consulting", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "1234578", 7 | "FaxNumber": "12345678", 8 | "EMailAddress": "email@email.com", 9 | "InternetAddress": "http://example.com", 10 | "MailingAddress": "Postadresse 9", 11 | "MailingPostalCode": "0000", 12 | "MailingPostalCity": "By", 13 | "BusinessAddress": "Forretningsadresse 9", 14 | "BusinessPostalCode": "0000", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/897069631.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "897069631", 3 | "Name": "EAS Health Consulting", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "epost@setra.no", 9 | "InternetAddress": "http://setrabrl.no", 10 | "MailingAddress": "Sofies Gate 2", 11 | "MailingPostalCode": "0170", 12 | "MailingPostalCity": "Oslo", 13 | "BusinessAddress": "Sofies Gate 2", 14 | "BusinessPostalCode": "0170", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/897069651.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "897069651", 3 | "Name": "DDG Fitness Oslo", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010001", 7 | "FaxNumber": "92110001", 8 | "EMailAddress": "oslo@ddgfitness.no", 9 | "InternetAddress": "http://ddgfitness.no", 10 | "MailingAddress": "Sofies Gate 1", 11 | "MailingPostalCode": "0170", 12 | "MailingPostalCity": "Oslo", 13 | "BusinessAddress": "Sofies Gate 1", 14 | "BusinessPostalCode": "0170", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/950474084.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "950474084", 3 | "Name": "Oslos Vakreste Borettslag", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "epost@setra.no", 9 | "InternetAddress": "http://setrabrl.no", 10 | "MailingAddress": "Sofies Gate 2", 11 | "MailingPostalCode": "0170", 12 | "MailingPostalCity": "Oslo", 13 | "BusinessAddress": "Sofies Gate 2", 14 | "BusinessPostalCode": "0170", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/K6/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "k6-api-tests", 3 | "version": "1.0.0", 4 | "description": "K6 test scripts for Altinn3 APIs", 5 | "scripts": { 6 | "eslint:check": "eslint \"src/**\"", 7 | "eslint:fix": "eslint \"src/**\" --fix", 8 | "prettier:check": "prettier -c src/**/*.js", 9 | "prettier:format": "prettier -w src/**/*.js" 10 | }, 11 | "devDependencies": { 12 | "@babel/core": "7.26.0", 13 | "@babel/eslint-parser": "7.25.9", 14 | "eslint": "9.14.0", 15 | "prettier": "3.3.3" 16 | }, 17 | "packageManager": "yarn@4.5.1" 18 | } 19 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/AltinnApps/AltinnAppsOrg1App1_UserDelegation_DeletedResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "NotApplicable", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_AccessListAuthorization_Json_DenyResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "Deny", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/910457292.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "910457292", 3 | "Name": "EAS Health Consulting Sortland", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "sortland@eashealt.no", 9 | "InternetAddress": "http://setrabrl.no", 10 | "MailingAddress": "Strandgata 2", 11 | "MailingPostalCode": "8400", 12 | "MailingPostalCity": "Sortland", 13 | "BusinessAddress": "Strandgata 2", 14 | "BusinessPostalCode": "8400", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/AltinnApps/AppPolicy_AltinnAppsOrg1App1_DAGL_NotApplicableResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "NotApplicable", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/897069652.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "897069652", 3 | "Name": "DDG Fitness Bergen", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010002", 7 | "FaxNumber": "92110002", 8 | "EMailAddress": "bergen@ddgfitness.no", 9 | "InternetAddress": "http://ddgfitness.no", 10 | "MailingAddress": "Olav Kyrres Gate 11", 11 | "MailingPostalCode": "5014", 12 | "MailingPostalCity": "Bergen", 13 | "BusinessAddress": "Olav Kyrres Gate 11", 14 | "BusinessPostalCode": "5014", 15 | "BusinessPostalCity": "Bergen" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/910423185.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "910423185", 3 | "Name": "EAS Health Consulting Svolvær", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "lofoten@eashealt.no", 9 | "InternetAddress": "http://eashealt.no", 10 | "MailingAddress": "Feskslogveien 12", 11 | "MailingPostalCode": "8400", 12 | "MailingPostalCity": "Svolvær", 13 | "BusinessAddress": "Feskslogveien 12", 14 | "BusinessPostalCode": "8300", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/910423495.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "923609016", 3 | "Name": "EAS Health Consulting Svolvær", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "lofoten@eashealt.no", 9 | "InternetAddress": "http://eashealt.no", 10 | "MailingAddress": "Feskslogveien 12", 11 | "MailingPostalCode": "8400", 12 | "MailingPostalCity": "Svolvær", 13 | "BusinessAddress": "Feskslogveien 12", 14 | "BusinessPostalCode": "8300", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/910471120.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "910471120", 3 | "Name": "EAS Health Consulting Stokmarknes", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010000", 7 | "FaxNumber": "92110000", 8 | "EMailAddress": "sortland@eashealt.no", 9 | "InternetAddress": "http://setrabrl.no", 10 | "MailingAddress": "Strandgata 2", 11 | "MailingPostalCode": "8450", 12 | "MailingPostalCity": "Sortland", 13 | "BusinessAddress": "Strandgata 2", 14 | "BusinessPostalCode": "8450", 15 | "BusinessPostalCity": "By" 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_OedFormuesfullmakt_Json_IndeterminateResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "NotApplicable", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Register/Org/897069653.json: -------------------------------------------------------------------------------- 1 | { 2 | "OrgNumber": "897069653", 3 | "Name": "DDG Fitness Trondheim", 4 | "UnitType": "AS", 5 | "TelephoneNumber": "12345678", 6 | "MobileNumber": "92010003", 7 | "FaxNumber": "92110003", 8 | "EMailAddress": "trondheim@ddgfitness.no", 9 | "InternetAddress": "http://ddgfitness.no", 10 | "MailingAddress": "Kjøpmannsgata 25", 11 | "MailingPostalCode": "7013", 12 | "MailingPostalCity": "Trondheim", 13 | "BusinessAddress": "Kjøpmannsgata 25", 14 | "BusinessPostalCode": "7013", 15 | "BusinessPostalCity": "Trondheim" 16 | } 17 | -------------------------------------------------------------------------------- /src/Altinn.Common.PEP/Altinn.Common.PEP/Authorization/IScopeAccessRequirement.cs: -------------------------------------------------------------------------------- 1 | #nullable enable 2 | 3 | using Microsoft.AspNetCore.Authorization; 4 | 5 | namespace Altinn.Common.PEP.Authorization; 6 | 7 | /// 8 | /// This interface describes the implementation of a scope access requirement in policy based authorization 9 | /// 10 | public interface IScopeAccessRequirement : IAuthorizationRequirement 11 | { 12 | /// 13 | /// Gets or sets the scope defined for the policy using this requirement 14 | /// 15 | string[] Scope { get; set; } 16 | } 17 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_AccessListAuthorization_Json_DenyActionFilterNotMatchingResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "Deny", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /src/Altinn.Authorization.ABAC/Xacml/JsonProfile/XacmlJsonStatusCode.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Authorization.ABAC.Xacml.JsonProfile 2 | { 3 | /// 4 | /// A XACML Json object for status Code. 5 | /// 6 | public class XacmlJsonStatusCode 7 | { 8 | /// 9 | /// Gets or sets the value. 10 | /// 11 | public string Value { get; set; } 12 | 13 | /// 14 | /// Gets or sets a nested status code. 15 | /// 16 | public XacmlJsonStatusCode StatusCode { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_AccessListAuthorization_Json_DenyAccessListDontSupportPersonResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "Deny", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:ok", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /test/K6/src/availability.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This script is to check if the infoportal of altinn has the downtime information 3 | * and print up or down to the console. 4 | */ 5 | import { parseHTML } from 'k6/html'; 6 | import http from 'k6/http'; 7 | import { baseUrl } from './config.js'; 8 | 9 | export default function () { 10 | const res = http.get('https://' + baseUrl); 11 | const doc = parseHTML(res.body); 12 | const availability = doc.find('body').find('h1').text(); 13 | if (availability.includes('Altinn is unavailable at the moment')) console.log('down'); 14 | else console.log('up'); 15 | } 16 | -------------------------------------------------------------------------------- /src/Authorization/Configuration/PostgreSQLSettings.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Platform.Authorization.Configuration 2 | { 3 | /// 4 | /// Settings for Postgres database 5 | /// 6 | public class PostgreSQLSettings 7 | { 8 | /// 9 | /// Connection string for the postgres db 10 | /// 11 | public string ConnectionString { get; set; } 12 | 13 | /// 14 | /// Password for app user for the postgres db 15 | /// 16 | public string AuthorizationDbPwd { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/Authorization/Modelbindig/XacmlRequestApiModel.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Platform.Authorization.ModelBinding 2 | { 3 | /// 4 | /// This is an model special created to support both JSON and XML in the same endpoint. 5 | /// It will be created by a custom Model binder created for this case 6 | /// 7 | public class XacmlRequestApiModel 8 | { 9 | /// 10 | /// Gets or sets the BodyContent coming from the request. Populated by the AltinnCoreApiModelBinder 11 | /// 12 | public string BodyContent { get; set; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonResponseExternal.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace Altinn.Platform.Authorization.Models.External 4 | { 5 | /// 6 | /// The JSON Response. 7 | /// https://docs.oasis-open.org/xacml/xacml-json-http/v1.1/os/xacml-json-http-v1.1-os.html#_Toc5116225 8 | /// 9 | public class XacmlJsonResponseExternal 10 | { 11 | /// 12 | /// Gets or sets a list over JSON XACML results. 13 | /// 14 | public List Response { get; set; } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/Authorization/Models/External/XacmlJsonStatusCodeExternal.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Platform.Authorization.Models.External 2 | { 3 | /// 4 | /// A XACML Json object for status Code. 5 | /// 6 | public class XacmlJsonStatusCodeExternal 7 | { 8 | /// 9 | /// Gets or sets the value. 10 | /// 11 | public string Value { get; set; } 12 | 13 | /// 14 | /// Gets or sets a nested status code. 15 | /// 16 | public XacmlJsonStatusCodeExternal StatusCode { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/AddRules/PostgreError.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "delegatedByUserId": 0, 4 | "offeredByPartyId": 0, 5 | "coveredBy": [ 6 | { 7 | "id": "urn:altinn:userid", 8 | "value": "0" 9 | } 10 | ], 11 | "resource": [ 12 | { 13 | "id": "urn:altinn:org", 14 | "value": "error" 15 | }, 16 | { 17 | "id": "urn:altinn:app", 18 | "value": "postgre" 19 | } 20 | ], 21 | "action": { 22 | "id": "urn:oasis:names:tc:xacml:1.0:action:action-id", 23 | "value": "error" 24 | } 25 | } 26 | ] 27 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Json/AddRules/BlobStorageError.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "delegatedByUserId": 1, 4 | "offeredByPartyId": 1, 5 | "coveredBy": [ 6 | { 7 | "id": "urn:altinn:userid", 8 | "value": "1" 9 | } 10 | ], 11 | "resource": [ 12 | { 13 | "id": "urn:altinn:org", 14 | "value": "error" 15 | }, 16 | { 17 | "id": "urn:altinn:app", 18 | "value": "blobstorage" 19 | } 20 | ], 21 | "action": { 22 | "id": "urn:oasis:names:tc:xacml:1.0:action:action-id", 23 | "value": "error" 24 | } 25 | } 26 | ] 27 | -------------------------------------------------------------------------------- /src/Authorization/Models/ResourceRegistry/AuthorizationReferenceAttribute.cs: -------------------------------------------------------------------------------- 1 | namespace Altinn.Authorization.Models.ResourceRegistry; 2 | 3 | /// 4 | /// The reference 5 | /// 6 | public class AuthorizationReferenceAttribute 7 | { 8 | /// 9 | /// The key for authorization reference. Used for authorization api related to resource 10 | /// 11 | public string Id { get; set; } 12 | 13 | /// 14 | /// The value for authorization reference. Used for authorization api related to resource 15 | /// 16 | public string Value { get; set; } 17 | } 18 | -------------------------------------------------------------------------------- /test/IntegrationTests/Data/Xacml/3.0/ResourceRegistry/ResourceRegistry_SystemUserWithDelegation_TooManyRequestSubjects_IndeterminateResponse.json: -------------------------------------------------------------------------------- 1 | { 2 | "response": [ 3 | { 4 | "decision": "Indeterminate", 5 | "status": { 6 | "statusMessage": null, 7 | "statusDetails": null, 8 | "statusCode": { 9 | "value": "urn:oasis:names:tc:xacml:1.0:status:processing-error", 10 | "statusCode": null 11 | } 12 | }, 13 | "obligations": null, 14 | "associateAdvice": null, 15 | "category": null, 16 | "policyIdentifierList": null 17 | } 18 | ] 19 | } -------------------------------------------------------------------------------- /src/Authorization/Models/QueuePostReceipt.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Altinn.Platform.Authorization.Models 4 | { 5 | /// 6 | /// Object to hold the receipt for a push queue action. 7 | /// 8 | public class QueuePostReceipt 9 | { 10 | /// 11 | /// Boolean to indicate if the push was successful. 12 | /// 13 | public bool Success { get; set; } 14 | 15 | /// 16 | /// Exception. Only populated if the push failed. 17 | /// 18 | public Exception Exception { get; set; } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA001Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA002Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA006Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA008Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA010Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA012Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA014Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA015Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA016Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA017Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA018Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA019Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA020Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIA021Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB002Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB004Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB006Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB008Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB010Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB012Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB014Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB016Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB018Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB020Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB022Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB024Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB026Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB028Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB030Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB032Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB034Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB036Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB038Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB040Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB042Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB044Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB046Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB048Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB050Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIB052Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC001Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC002Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC004Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC005Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC006Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC007Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC009Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC010Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC013Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC015Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC016Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC017Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC018Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC019Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC020Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC021Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC026Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC027Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC029Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC030Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC032Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC034Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC036Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC038Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC040Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC042Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC044Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC046Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC048Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC050Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC052Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC056Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC058Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC060Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC062Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC064Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC066Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC068Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC070Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC072Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC074Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC076Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC078Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC080Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC082Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC084Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC086Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC090Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC094Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC096Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC100Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC101Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC102Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC103Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC104Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC105Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC106Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC107Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC108Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC109Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC110Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC111Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC112Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC113Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC114Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC115Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC116Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC117Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC118Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC119Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC120Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC121Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC122Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC123Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC124Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC125Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC126Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC127Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC128Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC129Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC130Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC131Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC132Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC133Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC134Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC135Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC136Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC137Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC138Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC139Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC140Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC141Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC142Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC143Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC144Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC145Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC146Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC147Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC148Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC149Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC150Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC151Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC152Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC153Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC154Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC155Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC156Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC157Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC158Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC159Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC160Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC161Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC162Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC163Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC164Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC165Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC166Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC167Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC168Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC169Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC170Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC171Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC172Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC173Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC174Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC175Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC176Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC177Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /test/UnitTest/Data/Xacml/3.0/ConformanceTests/IIC178Response.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | Permit 9 | 10 | 12 | 13 | 14 | 15 | --------------------------------------------------------------------------------