Skip to content

Commit

Permalink
Updates (#1657)
Browse files Browse the repository at this point in the history
* Updates

* Updates

* Updates

* updates

* updates

* updates
  • Loading branch information
TheTechArch authored May 31, 2024
1 parent 3b6badf commit cbbe0fd
Show file tree
Hide file tree
Showing 9 changed files with 854 additions and 12 deletions.
28 changes: 26 additions & 2 deletions content/authorization/guides/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,31 @@
---
title: User Guides
linktitle: User Guides
description: User Guides
description: Read our collection of user guides related to Altinn Authorization.
toc: false
weight: 4
---
---

## Creating and publishing resources in Altinn Studio

This guide explains how an org can create and publish a resource in Altinn Studio Resource Admin.

[Read guide](create-resource-resource-admin)

## Creating and publishing API scheme in Altinn Studio

This guide explains how an org can create and publish an API Scheme in Altinn Studio Resource Admin.

[Read guide](create-apischeme-resource-admin)

## Setting up integration with Altinn Authorization from external services

This guide describes how to integrate with Altinn Authorization from an external service

[Read guide](integrating-link-service)

## XACML

Altinn Authorization uses XACML for Access control. This guide describes how the XACML Policy format is supported in Altinn and the XACML Request and Response formats for PDP.

[Read Guide](xacml)
32 changes: 28 additions & 4 deletions content/authorization/guides/_index.nb.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,31 @@
---
title: User Guides
linktitle: User Guides
description: User Guides
title: Brukerveiledninger
linktitle: Brukerveiledninger
description: Les vår samling av brukerveiledninger knyttet til Altinn Autorisasjon.
toc: false
weight: 4
---
---

## Opprette og publisere ressurser i Altinn Studio

Denne guiden forklarer hvordan en organisasjon kan opprette og publisere en ressurs i Altinn Studio Resource Admin.

[Les guide](create-resource-resource-admin)

## Opprette og publisere API-skjema i Altinn Studio

Denne guiden forklarer hvordan en organisasjon kan opprette og publisere et API-skjema i Altinn Studio Resource Admin.

[Les guide](create-apischeme-resource-admin)

## Sette opp integrasjon med Altinn Autorisasjon fra eksterne tjenester

Denne veiledningen beskriver hvordan du integrerer med Altinn Autorisasjon fra en ekstern tjeneste

[Les guide](integrating-link-service)

## XACML

Altinn Autorisasjon bruker XACML for tilgangskontroll. Denne veiledningen beskriver hvordan XACML Policy-formatet støttes i Altinn og XACML Request and Response-formatene for PDP.

[Les veiledning](xacml)
144 changes: 144 additions & 0 deletions content/authorization/guides/create-apischeme-api/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
---
title: Creating and publishing resources in Altinn Studio
linktitle: API Scheme via API
description: In Altinn Studio Resource admin, you can create resources to use as a basis for access control for services outside of the Altinn Platform.
toc: false
weight: 1
---

I Altinn Studio Resource admin kan du opprette ressurser som skal brukes som grunnlag for tilgangskontroll for tjenester utenfor Altinn-plattformen.

## Forutsetninger

- Organisasjon må ha klient i maskinporten
- Organisasjonen må ha blitt gitt scopene altinn:resourceregistry/resource.write og altinn:resourceregistry/resource.read

## Definere Ressurs for delegerbart API Scheme


De delegerbare API schemsene defineres i Altinn Ressursregister som en ressurs etter ressursmodellen

Følgende attributter er nødvendig


| Attributt | Beskrivelse |
|-------|-------|
|identifier | Globalt unik ID for ressurs. Brukes i Policy også. Påkrevd |
| Title | Tittel for API Scheme. Vises i Altinn portal når man delegerer. Må oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd |
| description | Beskrivelse for API Scheme å oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd|
| rightDescription | Delegeringsbeskrivelse for API Scheme. Må oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd |
| resourceReferences | Det må legges inn en resource refernece med referencetype MaskinportenScope |
| delegable | Må settes til true for at scope skal kunne delegeres til leverandør |
| visible | Må settes til true for at scope skal kunne delegeres til leverandør |
| hasCompetentAuthority | Definere tjenesteeier. Må settes med organisasjonsnr og riktig tjenesteeierkode (NAV, SKD, SVV +++) |
| resourceType | Må settes til MaskinportenSchema |

Nedenfor vises eksempel fra produksjon på API ressurs. ([se samme vi API](https://platform.altinn.no/resourceregistry/api/v1/resource/maskinportenschema-aquaportalapi-write))

```json
{
"identifier": "maskinportenschema-aquaportalapi-write",
"title": {
"en": "Write access to the Aqua Portal API.",
"nb": "Skrivetilgang til API for Akvakulturportalen.",
"nn": "Skrivetilgang til API for Akvakulturportalen."
},
"description": {
"en": "This service provides write access to aquaculture applications for county municipalities and other sector authorities.",
"nb": "Denne tjenesten gir skrivetilgang til akvakultursøknader for fylkeskommuner og andre sektormyndigheter.",
"nn": "Denne tenesta gir skrivetilgang til akvakultursøknader for fylkeskommunar og andre sektormyndigheiter."
},
"rightDescription": {
"en": "This service provides write access to aquaculture applications for county municipalities and other sector authorities.",
"nb": "Denne tjenesten gir skrivetilgang til akvakultursøknader for fylkeskommuner og andre sektormyndigheter.",
"nn": "Denne tenesta gir skrivetilgang til akvakultursøknader for fylkeskommunar og andre sektormyndigheiter."
},
"homepage": "https://www.fiskeridir.no/",
"status": "Active",
"contactPoints": [
{
"contactPage": "https://www.fiskeridir.no/"
}
],
"isPartOf": "",
"resourceReferences": [
{
"referenceSource": "Altinn3",
"reference": "fdir:aquaportalapi.write",
"referenceType": "MaskinportenScope"
}
],
"delegable": true,
"visible": true,
"hasCompetentAuthority": {
"organization": "971203420",
"orgcode": "FD",
"name": {
"en": "The Norwegian Directorate of Fisheries",
"nb": "Fiskeridirektoratet",
"nn": "Fiskeridirektoratet"
}
},
"keywords": [],
"limitedByRRR": false,
"selfIdentifiedUserEnabled": false,
"enterpriseUserEnabled": false,
"resourceType": "MaskinportenSchema"
}
```


## Definere policy for API Scheme

For å kunne støtte delegering av API SCheme til leverandør må API Scheme ressursen ha en policy som beskriver hvem som har rettighet til å delegere
API SCheme til leverandør.

Policy må ha en regel som gir APIADM rollen rettighet til action scopeaccess. Hvis kontaktperson for NUF skal ha mulighet til å delegere må rollen APIADMNUF også legges til.


Nedefor vises policy for ressurs eksempelet. [Last ned fra API](https://platform.altinn.no/resourceregistry/api/v1/resource/maskinportenschema-aquaportalapi-write/policy)


```xml
<?xml version="1.0" encoding="utf-8"?>
<xacml:Policy xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance" xmlns:xacml="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17" PolicyId="urn:maskinportenschema:aquaportalapi:write:1" Version="1.0" RuleCombiningAlgId="urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:deny-overrides">
<xacml:Target/>
<xacml:Rule RuleId="urn:maskinportenschema:aquaportalapi:write:1:1" Effect="Permit">
<xacml:Description>MaskinportenSchema resource policy for; maskinportenschema-aquaportalapi-write for roles; APIADM to have access to actions; ScopeAccess</xacml:Description>
<xacml:Target>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:3.0:function:string-equal-ignore-case">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">APIADM</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:altinn:rolecode" Category="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">maskinportenschema-aquaportalapi-write</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:altinn:resource" Category="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:3.0:function:string-equal-ignore-case">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">ScopeAccess</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:action:action-id" Category="urn:oasis:names:tc:xacml:3.0:attribute-category:action" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
</xacml:Target>
</xacml:Rule>
<xacml:ObligationExpressions>
<xacml:ObligationExpression FulfillOn="Permit" ObligationId="urn:maskinportenschema:aquaportalapi:write:obligation:1">
<xacml:AttributeAssignmentExpression AttributeId="urn:maskinportenschema:aquaportalapi:write:obligation-assignment:1" Category="urn:altinn:minimum-authenticationlevel">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#integer">3</xacml:AttributeValue>
</xacml:AttributeAssignmentExpression>
</xacml:ObligationExpression>
</xacml:ObligationExpressions>
</xacml:Policy>

```
144 changes: 144 additions & 0 deletions content/authorization/guides/create-apischeme-api/_index.nb.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
---
title: Opprette og publisere delegerbar API Scheme
linktitle: API Scheme via API
description: Denne guiden forklarer hvordan du kan opprette og publisere API Scheme fre
toc: false
weight: 1
---

I Altinn Studio Resource admin kan du opprette ressurser som skal brukes som grunnlag for tilgangskontroll for tjenester utenfor Altinn-plattformen.

## Forutsetninger

- Organisasjon må ha klient i maskinporten
- Organisasjonen må ha blitt gitt scopene altinn:resourceregistry/resource.write og altinn:resourceregistry/resource.read

## Definere Ressurs for delegerbart API Scheme


De delegerbare API schemsene defineres i Altinn Ressursregister som en ressurs etter ressursmodellen

Følgende attributter er nødvendig


| Attributt | Beskrivelse |
|-------|-------|
|identifier | Globalt unik ID for ressurs. Brukes i Policy også. Påkrevd |
| Title | Tittel for API Scheme. Vises i Altinn portal når man delegerer. Må oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd |
| description | Beskrivelse for API Scheme å oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd|
| rightDescription | Delegeringsbeskrivelse for API Scheme. Må oppgis for en, nb og nn (engelsk, bokmål og nynorsk) Påkrevd |
| resourceReferences | Det må legges inn en resource refernece med referencetype MaskinportenScope |
| delegable | Må settes til true for at scope skal kunne delegeres til leverandør |
| visible | Må settes til true for at scope skal kunne delegeres til leverandør |
| hasCompetentAuthority | Definere tjenesteeier. Må settes med organisasjonsnr og riktig tjenesteeierkode (NAV, SKD, SVV +++) |
| resourceType | Må settes til MaskinportenSchema |

Nedenfor vises eksempel fra produksjon på API ressurs. ([se samme vi API](https://platform.altinn.no/resourceregistry/api/v1/resource/maskinportenschema-aquaportalapi-write))

```json
{
"identifier": "maskinportenschema-aquaportalapi-write",
"title": {
"en": "Write access to the Aqua Portal API.",
"nb": "Skrivetilgang til API for Akvakulturportalen.",
"nn": "Skrivetilgang til API for Akvakulturportalen."
},
"description": {
"en": "This service provides write access to aquaculture applications for county municipalities and other sector authorities.",
"nb": "Denne tjenesten gir skrivetilgang til akvakultursøknader for fylkeskommuner og andre sektormyndigheter.",
"nn": "Denne tenesta gir skrivetilgang til akvakultursøknader for fylkeskommunar og andre sektormyndigheiter."
},
"rightDescription": {
"en": "This service provides write access to aquaculture applications for county municipalities and other sector authorities.",
"nb": "Denne tjenesten gir skrivetilgang til akvakultursøknader for fylkeskommuner og andre sektormyndigheter.",
"nn": "Denne tenesta gir skrivetilgang til akvakultursøknader for fylkeskommunar og andre sektormyndigheiter."
},
"homepage": "https://www.fiskeridir.no/",
"status": "Active",
"contactPoints": [
{
"contactPage": "https://www.fiskeridir.no/"
}
],
"isPartOf": "",
"resourceReferences": [
{
"referenceSource": "Altinn3",
"reference": "fdir:aquaportalapi.write",
"referenceType": "MaskinportenScope"
}
],
"delegable": true,
"visible": true,
"hasCompetentAuthority": {
"organization": "971203420",
"orgcode": "FD",
"name": {
"en": "The Norwegian Directorate of Fisheries",
"nb": "Fiskeridirektoratet",
"nn": "Fiskeridirektoratet"
}
},
"keywords": [],
"limitedByRRR": false,
"selfIdentifiedUserEnabled": false,
"enterpriseUserEnabled": false,
"resourceType": "MaskinportenSchema"
}
```


## Definere policy for API Scheme

For å kunne støtte delegering av API SCheme til leverandør må API Scheme ressursen ha en policy som beskriver hvem som har rettighet til å delegere
API SCheme til leverandør.

Policy må ha en regel som gir APIADM rollen rettighet til action scopeaccess. Hvis kontaktperson for NUF skal ha mulighet til å delegere må rollen APIADMNUF også legges til.


Nedefor vises policy for ressurs eksempelet. [Last ned fra API](https://platform.altinn.no/resourceregistry/api/v1/resource/maskinportenschema-aquaportalapi-write/policy)


```xml
<?xml version="1.0" encoding="utf-8"?>
<xacml:Policy xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance" xmlns:xacml="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17" PolicyId="urn:maskinportenschema:aquaportalapi:write:1" Version="1.0" RuleCombiningAlgId="urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:deny-overrides">
<xacml:Target/>
<xacml:Rule RuleId="urn:maskinportenschema:aquaportalapi:write:1:1" Effect="Permit">
<xacml:Description>MaskinportenSchema resource policy for; maskinportenschema-aquaportalapi-write for roles; APIADM to have access to actions; ScopeAccess</xacml:Description>
<xacml:Target>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:3.0:function:string-equal-ignore-case">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">APIADM</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:altinn:rolecode" Category="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:1.0:function:string-equal">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">maskinportenschema-aquaportalapi-write</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:altinn:resource" Category="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
<xacml:AnyOf>
<xacml:AllOf>
<xacml:Match MatchId="urn:oasis:names:tc:xacml:3.0:function:string-equal-ignore-case">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">ScopeAccess</xacml:AttributeValue>
<xacml:AttributeDesignator AttributeId="urn:oasis:names:tc:xacml:1.0:action:action-id" Category="urn:oasis:names:tc:xacml:3.0:attribute-category:action" DataType="http://www.w3.org/2001/XMLSchema#string" MustBePresent="false"/>
</xacml:Match>
</xacml:AllOf>
</xacml:AnyOf>
</xacml:Target>
</xacml:Rule>
<xacml:ObligationExpressions>
<xacml:ObligationExpression FulfillOn="Permit" ObligationId="urn:maskinportenschema:aquaportalapi:write:obligation:1">
<xacml:AttributeAssignmentExpression AttributeId="urn:maskinportenschema:aquaportalapi:write:obligation-assignment:1" Category="urn:altinn:minimum-authenticationlevel">
<xacml:AttributeValue DataType="http://www.w3.org/2001/XMLSchema#integer">3</xacml:AttributeValue>
</xacml:AttributeAssignmentExpression>
</xacml:ObligationExpression>
</xacml:ObligationExpressions>
</xacml:Policy>

```
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Creating and publishing API scheme in altinn Studio
linktitle: Creating API Scheme
description: This explaines how
description: This explaines how you can define a API scheme in Altinn
toc: false
weight: 1
---
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: Opprette og publisere ressurser i altinn Studio
title: Opprette og publisere APIScheme i Altinn Studio
linktitle: Opprette API Scheme
description: Denne guiden forklarer hvordan du kan opprette og publisere ressurser i fra Ressursadministrasjon i Altinn Studio
toc: false
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
title: Creating and publishing resources in altinn Studio
title: Creating and publishing resources in Altinn Studio
linktitle: Creating Resources
description: This explaines how
description: In Altinn Studio Resource admin, you can create resources to use as a basis for access control for services outside of the Altinn Platform.
toc: false
weight: 1
---


In Altinn Studio Resource admin, you can create resources to use as a basis for access control for services outside of the Altinn Platform.


## Prerequisites

Expand Down
Loading

0 comments on commit cbbe0fd

Please sign in to comment.