@@ -9,7 +9,7 @@ import io.ktor.server.routing.*
9
9
import no.nav.mulighetsrommet.altinn.AltinnRettigheterService
10
10
import no.nav.mulighetsrommet.altinn.model.AltinnRessurs
11
11
import no.nav.mulighetsrommet.api.AuthConfig
12
- import no.nav.mulighetsrommet.api.navansatt.db .NavAnsattRolle
12
+ import no.nav.mulighetsrommet.api.navansatt.model .NavAnsattRolle
13
13
import no.nav.mulighetsrommet.ktor.exception.StatusException
14
14
import no.nav.mulighetsrommet.model.NavIdent
15
15
import no.nav.mulighetsrommet.model.NorskIdent
@@ -27,7 +27,9 @@ enum class AuthProvider {
27
27
AZURE_AD_AVTALER_SKRIV ,
28
28
AZURE_AD_TILTAKSJENNOMFORINGER_SKRIV ,
29
29
AZURE_AD_TILTAKSADMINISTRASJON_GENERELL ,
30
- AZURE_AD_OKONOMI_BESLUTTER ,
30
+ AZURE_AD_SAKSBEHANDLER_OKONOMI ,
31
+ AZURE_AD_BESLUTTER_TILSAGN ,
32
+ AZURE_AD_ATTESTANT_UTBETALING ,
31
33
TOKEN_X_ARRANGOR_FLATE ,
32
34
}
33
35
@@ -157,8 +159,8 @@ fun Application.configureAuthentication(
157
159
158
160
if (! hasNavAnsattRoles(
159
161
credentials,
160
- NavAnsattRolle .AVTALER_SKRIV ,
161
162
NavAnsattRolle .TILTAKADMINISTRASJON_GENERELL ,
163
+ NavAnsattRolle .AVTALER_SKRIV ,
162
164
)
163
165
) {
164
166
return @validate null
@@ -178,8 +180,50 @@ fun Application.configureAuthentication(
178
180
179
181
if (! hasNavAnsattRoles(
180
182
credentials,
183
+ NavAnsattRolle .TILTAKADMINISTRASJON_GENERELL ,
181
184
NavAnsattRolle .TILTAKSGJENNOMFORINGER_SKRIV ,
185
+ )
186
+ ) {
187
+ return @validate null
188
+ }
189
+
190
+ JWTPrincipal (credentials.payload)
191
+ }
192
+ }
193
+
194
+ jwt(AuthProvider .AZURE_AD_SAKSBEHANDLER_OKONOMI ) {
195
+ verifier(azureJwkProvider, auth.azure.issuer) {
196
+ withAudience(auth.azure.audience)
197
+ }
198
+
199
+ validate { credentials ->
200
+ credentials[" NAVident" ] ? : return @validate null
201
+
202
+ if (! hasNavAnsattRoles(
203
+ credentials,
204
+ NavAnsattRolle .TILTAKADMINISTRASJON_GENERELL ,
205
+ NavAnsattRolle .SAKSBEHANDLER_OKONOMI ,
206
+ )
207
+ ) {
208
+ return @validate null
209
+ }
210
+
211
+ JWTPrincipal (credentials.payload)
212
+ }
213
+ }
214
+
215
+ jwt(AuthProvider .AZURE_AD_BESLUTTER_TILSAGN ) {
216
+ verifier(azureJwkProvider, auth.azure.issuer) {
217
+ withAudience(auth.azure.audience)
218
+ }
219
+
220
+ validate { credentials ->
221
+ credentials[" NAVident" ] ? : return @validate null
222
+
223
+ if (! hasNavAnsattRoles(
224
+ credentials,
182
225
NavAnsattRolle .TILTAKADMINISTRASJON_GENERELL ,
226
+ NavAnsattRolle .BESLUTTER_TILSAGN ,
183
227
)
184
228
) {
185
229
return @validate null
@@ -189,7 +233,7 @@ fun Application.configureAuthentication(
189
233
}
190
234
}
191
235
192
- jwt(AuthProvider .AZURE_AD_OKONOMI_BESLUTTER ) {
236
+ jwt(AuthProvider .AZURE_AD_ATTESTANT_UTBETALING ) {
193
237
verifier(azureJwkProvider, auth.azure.issuer) {
194
238
withAudience(auth.azure.audience)
195
239
}
@@ -199,8 +243,8 @@ fun Application.configureAuthentication(
199
243
200
244
if (! hasNavAnsattRoles(
201
245
credentials,
202
- NavAnsattRolle .OKONOMI_BESLUTTER ,
203
246
NavAnsattRolle .TILTAKADMINISTRASJON_GENERELL ,
247
+ NavAnsattRolle .ATTESTANT_UTBETALING ,
204
248
)
205
249
) {
206
250
return @validate null
0 commit comments