Skip to content

Commit 49c4a4b

Browse files
committed
ci: add idportenclient resource and use its secret
This adds the idportenclient resource to version control so that you can manage its configuration if needed. Also refactor to use the secret directly to avoid having to manually copy keys and values into the `personopplysninger-api-secret` secret.
1 parent 5734ae3 commit 49c4a4b

File tree

6 files changed

+38
-10
lines changed

6 files changed

+38
-10
lines changed

.env.sample

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
AUTH_CLIENT_ID=yolo
2-
AUTH_CLIENT_JWK='{ "p": "yhLPxs0GjVCkeer259nCZSxVBvaxWZVqSFUZq10hIZP5ZWkKrMJoZ5UJhnknvurdxNYI9ffc6UgkqkeiC_kxdGLus3Ty3WbxMLgASNMY2wcoWA3tmTc2jO3XgaqcqlTbJWPI3QQpZFxJ4gzChJmlfuiH_qCNPP3mJh_ghKtEn8E", "kty": "RSA", "q": "tR6rLBqhdUNfJZxWACf7XuvHJQBsNN8UQPX78_XciiIkkyPEcFXUsSdr7LWdV1eIGlxNXNH9GVIlzqv7GR5aYgx7XpY7IbVk1E6j-WP0VTHg5Qhi5XtZBFoDoE6_xEpHg36RtEG2NS0iaoSD0ZE_uFNQliCMExRxSKb1tuejz-U", "d": "FwXw6LzPH-A4bxYesQl-WzLfKRgpH-s_79gVidVrJgqdVkro3eVo-5_cz8bYfRBovXRpKiiNPaypQPAQCIwTI4B9pyvA4d2ZkWmSYg3Age0S7lhSU8ksmTXyxcP8cWKTF9JuApaKvtSXd9Um0v-Y0nTYrDjIv07uDJcnNHLMmhrg7w8bBYnYGYOGSUhYBUcnglnf11pFcYs599TCuKFbY8q7hHPIGvuxF08nPvjmnUFQsLNiD-nGE6Pht62dlf91M9-QpfFoh4z8rGbII2rq4sHgGOy4Mjb69RqipDTKoSZei1B1T09_J894ZQ4Wmvv6IMIFMuLbvxNDAEjsCwCWAQ", "e": "AQAB", "use": "sig", "kid": "vxqPlFK91y63-9CL06i_WR9LEb7TosrnK9RG0FB2Tyw", "qi": "TV2U0EXQfFxVK8LJV2TNBOYLPcuQhLXcJyNHXpuUHe9Rr4NM82qH1d2gYPrzOv3nkVbEecRS2d0FZvdbDN035ULxqoJFfiEfPUDoyojsBqEXHPaLg8JZrtTdb2n_fOVHIN6NUuesJ8QJP8fxqW6_hQZm9y_14EacsLTB8_n-RSQ", "dp": "FVlfclV-97cpaWgVpfEvxJimcxHlMt3CWNoE2EICmhWUJ86tPgtcFHV-iCKMvHL78yvZzoLdaBgjJ4ph6Hnva6h4J6WXcyTJHqiR_x-uZJWhAYyXKbTXopQOTLjFzIkijhS4yAEEjoHhnGxUsMW64mmW1KQJyAPbKPP9OIcPvQE", "alg": "RS256", "dq": "UwWo3wGiCxeD0MC150Jshlk7oulrsFylcxWOlYiYvDTkYRIfJIMjiMUSQqIJapT0DWlMCQU0qFuweuj4o833DkS8dGIW3t_ARVV68oFv6XGArlvGwXxmFImSafRPERIfb9YfwenxNLTotrzhk7mp5LtEEF0A-GoBd5UYwuuxekU", "n": "jveCOUlMhUvVGSSSrlusenmhG-DP1EA6GIw8AgMg7US6HZk69k3iPQyTRmIZOWl2E27RP3KF8sD01RkzlV9Ru69_Vj2cr5P_ZNYg-rcl4WDma3xBsDvG0C4WHV5QLP7lU-o2vyb84UaLVoM99DjBUsEO61IO2Ne4F8zc6nXpH8TVQLbQq7dIXzk5elzmAjTVpMf1d5Q8tQgz43rIvS-8bXLNZxkPYlxXJbyVJPlTJW8vVurWoM5d7_Z7XdcAmeymJi3hFSyyuhYux8GfK28kbSgpaRivLx7mz2PJN33gn9a6-L4IdltdwLGg2KXyQgzHxSPGNd6gy3Da5l44kHL2pQ"}'
3-
AUTH_REDIRECT_URI=http://localhost:8080/lagreKontonummer
41
AUTH_FRONTEND_URI='http://localhost:3000/person/personopplysninger/#utbetaling'
5-
IDPORTEN_WELL_KNOWN_URL=http://localhost:9090/default/.well-known/openid-configuration
2+
AUTH_REDIRECT_URI=http://localhost:8080/lagreKontonummer
63
AUTH_ENCRYPTION_KEY=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=
4+
IDPORTEN_CLIENT_ID=yolo
5+
# this is a randomly generated key for use with mock-oauth2-server and isn't actually used in any real environments
6+
IDPORTEN_CLIENT_JWK='{"p":"yhLPxs0GjVCkeer259nCZSxVBvaxWZVqSFUZq10hIZP5ZWkKrMJoZ5UJhnknvurdxNYI9ffc6UgkqkeiC_kxdGLus3Ty3WbxMLgASNMY2wcoWA3tmTc2jO3XgaqcqlTbJWPI3QQpZFxJ4gzChJmlfuiH_qCNPP3mJh_ghKtEn8E","kty":"RSA","q":"tR6rLBqhdUNfJZxWACf7XuvHJQBsNN8UQPX78_XciiIkkyPEcFXUsSdr7LWdV1eIGlxNXNH9GVIlzqv7GR5aYgx7XpY7IbVk1E6j-WP0VTHg5Qhi5XtZBFoDoE6_xEpHg36RtEG2NS0iaoSD0ZE_uFNQliCMExRxSKb1tuejz-U","d":"FwXw6LzPH-A4bxYesQl-WzLfKRgpH-s_79gVidVrJgqdVkro3eVo-5_cz8bYfRBovXRpKiiNPaypQPAQCIwTI4B9pyvA4d2ZkWmSYg3Age0S7lhSU8ksmTXyxcP8cWKTF9JuApaKvtSXd9Um0v-Y0nTYrDjIv07uDJcnNHLMmhrg7w8bBYnYGYOGSUhYBUcnglnf11pFcYs599TCuKFbY8q7hHPIGvuxF08nPvjmnUFQsLNiD-nGE6Pht62dlf91M9-QpfFoh4z8rGbII2rq4sHgGOy4Mjb69RqipDTKoSZei1B1T09_J894ZQ4Wmvv6IMIFMuLbvxNDAEjsCwCWAQ","e":"AQAB","use":"sig","kid":"vxqPlFK91y63-9CL06i_WR9LEb7TosrnK9RG0FB2Tyw","qi":"TV2U0EXQfFxVK8LJV2TNBOYLPcuQhLXcJyNHXpuUHe9Rr4NM82qH1d2gYPrzOv3nkVbEecRS2d0FZvdbDN035ULxqoJFfiEfPUDoyojsBqEXHPaLg8JZrtTdb2n_fOVHIN6NUuesJ8QJP8fxqW6_hQZm9y_14EacsLTB8_n-RSQ","dp":"FVlfclV-97cpaWgVpfEvxJimcxHlMt3CWNoE2EICmhWUJ86tPgtcFHV-iCKMvHL78yvZzoLdaBgjJ4ph6Hnva6h4J6WXcyTJHqiR_x-uZJWhAYyXKbTXopQOTLjFzIkijhS4yAEEjoHhnGxUsMW64mmW1KQJyAPbKPP9OIcPvQE","alg":"RS256","dq":"UwWo3wGiCxeD0MC150Jshlk7oulrsFylcxWOlYiYvDTkYRIfJIMjiMUSQqIJapT0DWlMCQU0qFuweuj4o833DkS8dGIW3t_ARVV68oFv6XGArlvGwXxmFImSafRPERIfb9YfwenxNLTotrzhk7mp5LtEEF0A-GoBd5UYwuuxekU","n":"jveCOUlMhUvVGSSSrlusenmhG-DP1EA6GIw8AgMg7US6HZk69k3iPQyTRmIZOWl2E27RP3KF8sD01RkzlV9Ru69_Vj2cr5P_ZNYg-rcl4WDma3xBsDvG0C4WHV5QLP7lU-o2vyb84UaLVoM99DjBUsEO61IO2Ne4F8zc6nXpH8TVQLbQq7dIXzk5elzmAjTVpMf1d5Q8tQgz43rIvS-8bXLNZxkPYlxXJbyVJPlTJW8vVurWoM5d7_Z7XdcAmeymJi3hFSyyuhYux8GfK28kbSgpaRivLx7mz2PJN33gn9a6-L4IdltdwLGg2KXyQgzHxSPGNd6gy3Da5l44kHL2pQ"}'
7+
IDPORTEN_WELL_KNOWN_URL=http://localhost:9090/default/.well-known/openid-configuration
78
CORS_ALLOWED_ORIGINS=*
89
CORS_ALLOWED_SCHEMES=http

nais/dev-gcp/personbruker.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,7 @@
1111
"kontoregister-host": "sokos-kontoregister-person.intern.dev.nav.no",
1212
"min-replicas": 1,
1313
"max-replicas": 1,
14-
"kafka-pool": "nav-dev"
14+
"kafka-pool": "nav-dev",
15+
"idporten-client-uri": "https://www.ansatt.dev.nav.no/person/personopplysninger",
16+
"idporten-nav-base-uri": "https://login.ekstern.dev.nav.no"
1517
}

nais/idporten.yaml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: nais.io/v1
2+
kind: IDPortenClient
3+
metadata:
4+
labels:
5+
team: personbruker
6+
name: personopplysninger-api
7+
namespace: personbruker
8+
spec:
9+
accessTokenLifetime: 30
10+
clientURI: {{idporten-client-uri}}
11+
frontchannelLogoutURI: {{idporten-nav-base-uri}}/oauth2/logout/frontchannel
12+
integrationType: idporten
13+
postLogoutRedirectURIs:
14+
- {{idporten-client-uri}}
15+
redirectURIs:
16+
- {{idporten-client-uri}}
17+
- {{idporten-nav-base-uri}}
18+
{{#each ingresses}}
19+
- "{{this}}/lagreKontonummer"
20+
{{/each }}
21+
secretName: idporten-personopplysninger-api
22+
ssoDisabled: true

nais/nais.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ spec:
4949
{{/each}}
5050
envFrom:
5151
- secret: personopplysninger-api-secret
52+
- secret: idporten-personopplysninger-api
5253
secureLogs:
5354
enabled: true
5455
resources:

nais/prod-gcp/personbruker.json

+4-2
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,7 @@
1111
"kontoregister-host": "sokos-kontoregister-person.intern.nav.no",
1212
"min-replicas": 2,
1313
"max-replicas": 4,
14-
"kafka-pool": "nav-prod"
15-
}
14+
"kafka-pool": "nav-prod",
15+
"idporten-client-uri": "https://www.nav.no/person/personopplysninger",
16+
"idporten-nav-base-uri": "https://login.nav.no"
17+
}

src/main/kotlin/no/nav/personopplysninger/config/Environment.kt

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ data class Environment(
1212

1313
val redirectUri: String = System.getenv("AUTH_REDIRECT_URI"),
1414
val frontendUri: String = System.getenv("AUTH_FRONTEND_URI"),
15-
val wellKnownUrl: String = System.getenv("IDPORTEN_WELL_KNOWN_URL"),
16-
val clientId: String = System.getenv("AUTH_CLIENT_ID"),
17-
val clientJwk: String = System.getenv("AUTH_CLIENT_JWK"),
1815
val encryptionKey: String = System.getenv("AUTH_ENCRYPTION_KEY"),
16+
val clientId: String = System.getenv("IDPORTEN_CLIENT_ID"),
17+
val clientJwk: String = System.getenv("IDPORTEN_CLIENT_JWK"),
18+
val wellKnownUrl: String = System.getenv("IDPORTEN_WELL_KNOWN_URL"),
1919

2020
val inst2Url: String = System.getenv("INST2_API_URL"),
2121
val kodeverkUrl: String = System.getenv("KODEVERK_REST_API_URL"),

0 commit comments

Comments
 (0)