Skip to content

Commit

Permalink
TFP-5952 fjerne ubrukt legacy-abac
Browse files Browse the repository at this point in the history
  • Loading branch information
jolarsen committed Feb 10, 2025
1 parent 0932ad0 commit 2a81a9e
Show file tree
Hide file tree
Showing 36 changed files with 26 additions and 1,368 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -60,19 +60,15 @@ private Object ikkeTilgang(AbacResultat abacResultat) {
private BeskyttetRessursAttributter hentBeskyttetRessursAttributter(Method method, Class<?> mClass, AbacDataAttributter dataAttributter) {
var beskyttetRessurs = method.getAnnotation(BeskyttetRessurs.class);

var token = Token.withOidcToken(tokenProvider.openIdToken());

return BeskyttetRessursAttributter.builder()
.medBrukerId(tokenProvider.getUid())
.medBrukerOid(tokenProvider.getOid())
.medIdentType(tokenProvider.getIdentType())
.medAnsattGrupper(tokenProvider.getAnsattGrupper())
.medToken(token)
.medActionType(beskyttetRessurs.actionType())
.medAvailabilityType(beskyttetRessurs.availabilityType())
.medResourceType(finnResource(beskyttetRessurs))
.medSporingslogg(beskyttetRessurs.sporingslogg())
.medPepId(pep.pepId())
.medServicePath(utledAction(mClass, method))
.medDataAttributter(dataAttributter)
.build();
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
package no.nav.vedtak.sikkerhet.abac;

import no.nav.foreldrepenger.konfig.Environment;
import no.nav.vedtak.sikkerhet.abac.internal.BeskyttetRessursAttributter;

public interface Pep {

AbacResultat vurderTilgang(BeskyttetRessursAttributter beskyttetRessursAttributter);

default String pepId() {
return Environment.current().getNaisAppName();
}
}
70 changes: 0 additions & 70 deletions felles/abac/src/main/java/no/nav/vedtak/sikkerhet/abac/Token.java

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,23 +1,14 @@
package no.nav.vedtak.sikkerhet.abac.beskyttet;

public enum ActionType {
READ("read"),
UPDATE("update"),
CREATE("create"),
DELETE("delete"),
READ,
UPDATE,
CREATE,
DELETE,

/**
* Skal kun brukes av Interceptor
*/
DUMMY(null);
DUMMY;

private String eksternKode;

ActionType(String eksternKode) {
this.eksternKode = eksternKode;
}

public String getEksternKode() {
return eksternKode;
}
}
Original file line number Diff line number Diff line change
@@ -1,44 +1,25 @@
package no.nav.vedtak.sikkerhet.abac.beskyttet;

import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_APPLIKASJON;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_AVDELINGENHET;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_DRIFT;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_FAGSAK;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_OPPGAVESTYRING;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_UTTAKSPLAN;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_FP_VENTEFRIST;
import static no.nav.vedtak.sikkerhet.abac.policy.ForeldrepengerAttributter.RESOURCE_TYPE_INTERNAL_PIP;

public enum ResourceType {

// Til bruk i annotering
APPLIKASJON(RESOURCE_TYPE_FP_APPLIKASJON),
DRIFT(RESOURCE_TYPE_FP_DRIFT),
FAGSAK(RESOURCE_TYPE_FP_FAGSAK),
VENTEFRIST(RESOURCE_TYPE_FP_VENTEFRIST),
APPLIKASJON,
DRIFT,
FAGSAK,
VENTEFRIST,
// LOS
OPPGAVESTYRING_AVDELINGENHET(RESOURCE_TYPE_FP_AVDELINGENHET),
OPPGAVESTYRING(RESOURCE_TYPE_FP_OPPGAVESTYRING),
// OPPGAVEKØ(RESOURCE_TYPE_FP_OPPGAVEKØ), TODO: Vurder om skal brukes for å lese oppgaver for LOS. Nå brukes FAGSAK
OPPGAVESTYRING_AVDELINGENHET,
OPPGAVESTYRING,
// OPPGAVEKØ, TODO: Vurder om skal brukes for å lese oppgaver for LOS. Nå brukes FAGSAK

// Selvbetjening
UTTAKSPLAN(RESOURCE_TYPE_FP_UTTAKSPLAN),
UTTAKSPLAN,

// Til bruk i annotering for endepunkt som er PIP-tjenester
PIP(RESOURCE_TYPE_INTERNAL_PIP),
PIP,

/**
* Skal kun brukes av Interceptor
*/
DUMMY("");

private final String resourceTypeAttribute;

ResourceType(String resourceTypeAttribute) {
this.resourceTypeAttribute = resourceTypeAttribute;
}

public String getResourceTypeAttribute() {
return this != DUMMY ? resourceTypeAttribute : null;
}
DUMMY
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import java.util.UUID;

import no.nav.vedtak.sikkerhet.abac.AbacDataAttributter;
import no.nav.vedtak.sikkerhet.abac.Token;
import no.nav.vedtak.sikkerhet.abac.beskyttet.ActionType;
import no.nav.vedtak.sikkerhet.abac.beskyttet.AvailabilityType;
import no.nav.vedtak.sikkerhet.abac.beskyttet.ResourceType;
Expand All @@ -23,8 +22,6 @@ public class BeskyttetRessursAttributter {
private ActionType actionType;
private ResourceType resourceType;
private AvailabilityType availabilityType;
private Token token;
private String pepId;
private String servicePath;
private boolean sporingslogg = true;
private AbacDataAttributter dataAttributter;
Expand Down Expand Up @@ -65,14 +62,6 @@ public boolean isSporingslogg() {
return sporingslogg;
}

public Token getToken() {
return token;
}

public String getPepId() {
return pepId;
}

public String getServicePath() {
return servicePath;
}
Expand All @@ -84,7 +73,7 @@ public AbacDataAttributter getDataAttributter() {
@Override
public String toString() {
return "BeskyttetRessursAttributter{" + "userId=MASKERT" + ", actionType=" + actionType + ", resourceType="
+ resourceType + ", token=" + token + ", pepId=" + pepId + ", servicePath=" + servicePath + '}';
+ resourceType + ", servicePath=" + servicePath + '}';
}

public static class Builder {
Expand Down Expand Up @@ -114,11 +103,6 @@ public Builder medAnsattGrupper(Set<AnsattGruppe> ansattGrupper) {
return this;
}

public Builder medToken(Token token) {
pdpRequest.token = token;
return this;
}

public Builder medActionType(ActionType actionType) {
pdpRequest.actionType = actionType;
return this;
Expand All @@ -139,11 +123,6 @@ public Builder medSporingslogg(boolean sporingslogg) {
return this;
}

public Builder medPepId(String pepId) {
pdpRequest.pepId = pepId;
return this;
}

public Builder medServicePath(String servicePath) {
pdpRequest.servicePath = servicePath;
return this;
Expand All @@ -161,10 +140,9 @@ public BeskyttetRessursAttributter build() {

private void validateBeforeBuild() {
Objects.requireNonNull(pdpRequest.brukerId, "userId");
Objects.requireNonNull(pdpRequest.token, "idToken");
Objects.requireNonNull(pdpRequest.actionType, "actionType");
Objects.requireNonNull(pdpRequest.resourceType, "resourceType");
Objects.requireNonNull(pdpRequest.pepId, "pepId");
Objects.requireNonNull(pdpRequest.identType, "identType");
Objects.requireNonNull(pdpRequest.servicePath, "servicePath");
Objects.requireNonNull(pdpRequest.dataAttributter, "dataAttributter");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,24 +38,4 @@ private ForeldrepengerAttributter() {
public static final String VALUE_FP_AVDELING_ENHET_ADRESSEBESKYTTET = "2103";
public static final String VALUE_FP_AVDELING_ENHET_SKJERMET = "4883";

/**
* Attributter brukt som resource_type
* TODO: Behov for AvdelingEnhet og OppgaveStyring? Fjerne risikoklassifisering?
* TODO: OPPGAVEKØ ikke i bruk - vurder FAGSAK vs OPPGAVEKØ + evt bruk som dataattributt (køer på 2103. Mangler policies)
*/
public static final String RESOURCE_TYPE_FP_APPLIKASJON = "no.nav.abac.attributter.foreldrepenger";
public static final String RESOURCE_TYPE_FP_DRIFT = "no.nav.abac.attributter.foreldrepenger.drift";
public static final String RESOURCE_TYPE_FP_FAGSAK = "no.nav.abac.attributter.foreldrepenger.fagsak";
public static final String RESOURCE_TYPE_FP_VENTEFRIST = "no.nav.abac.attributter.foreldrepenger.fagsak.ventefrist";
public static final String RESOURCE_TYPE_FP_AVDELINGENHET = "no.nav.abac.attributter.foreldrepenger.oppgavestyring.avdelingsenhet";
// public static final String RESOURCE_TYPE_FP_OPPGAVEKØ = "no.nav.abac.attributter.foreldrepenger.oppgaveko"; TODO: Vurder om skal brukes for å lese oppgaver for LOS. Nå brukes FAGSAK. Evt bruk som dataAttributt.
public static final String RESOURCE_TYPE_FP_OPPGAVESTYRING = "no.nav.abac.attributter.foreldrepenger.oppgavestyring";
public static final String RESOURCE_TYPE_FP_UTTAKSPLAN = "no.nav.abac.attributter.resource.foreldrepenger.uttaksplan";

/**
* Attributter brukt til interne formål
*/
public static final String RESOURCE_TYPE_INTERNAL_PIP = "pip.tjeneste.kan.kun.kalles.av.pdp.servicebruker";
public static final String RESOURCE_TYPE_INTERNAL_DUMMY = "";

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package no.nav.vedtak.sikkerhet.abac.policy;

import java.util.Objects;
import java.util.Optional;
import java.util.Set;

import no.nav.foreldrepenger.konfig.Cluster;
Expand All @@ -25,7 +26,8 @@ public class SystemressursPolicies {
private static final Environment ENV = Environment.current();

// Format: json array av objekt("name", "clientId");
private static final String PRE_AUTHORIZED = ENV.getProperty(AzureProperty.AZURE_APP_PRE_AUTHORIZED_APPS.name());
private static final String PRE_AUTHORIZED = Optional.ofNullable(ENV.getProperty(AzureProperty.AZURE_APP_PRE_AUTHORIZED_APPS.name()))
.orElseGet(() -> ENV.getProperty(AzureProperty.AZURE_APP_PRE_AUTHORIZED_APPS.name().toLowerCase().replace('_', '.')));
private static final Cluster RESIDENT_CLUSTER = ENV.getCluster();
private static final String RESIDENT_NAMESPACE = ENV.namespace();
private static final Set<ResourceType> IKKE_TILLATT_RESOURCE_TYPE = Set.of(ResourceType.UTTAKSPLAN);
Expand Down

This file was deleted.

Loading

0 comments on commit 2a81a9e

Please sign in to comment.