5 suggerimenti su SAP S/4HANA Security: S/4HANA Upgrade

Posted by Massimo Manara on May 27, 2020 8:15:00 AM
Massimo Manara
Find me on:

Quali sono i punti di attenzione nei progetti SAP S/4HANA?

SAP S4HANA SECURITY

 

Cosa conviene fare per prepararsi? Come approcciare le novità?

1) Greenfield o Brownfield?

Ne abbiamo già parlato in questo post. Ma cosa conviene fare?

 

Greenfield: l'upgrade diventa una rivisitazione globale dei processi attualmente in essere. Come se fosse, per alcuni aspetti, un progetto di nuova implementazione.

Si tratta di un'ottima occasione per rivedere processi, migliorandone parti oppure sfruttando le novità della suite.

 

Attenzione questo tuttavia può comportare un tempo maggiore di analisi e complessità. Devi tenerne conto se vuoi intraprendere questa strada. Conseguentemente anche gli aspetti di profilazione possono diventare molto più impegnativi rispetto ad un upgrade "tecnico" o brownfield.

 

Brownfield: in questo caso si tratta di un upgrade più tecnico. Ovvero tutte le funzionalità (o quasi) del passato continuano a funzionare introducendo nessuna o poche novità delle nuova release.

 

Può essere relativamente più semplice rispetto al greenfield tuttavia in alcuni contesti è comunque impegnativo.

 

Ricordati che se hai definito un buon concetto autorizzativo un upgrade di questo tipo può essere sicuramente meno complicato rispetto a non aver definito un concetto autorizzativivo o non aver rispettato le regole di gestione della profilazione SAP.

Purtroppo in molti casi, siccome le autorizzazioni comunque "funzionano" indipendentemente da come le si è gestite si scoprono difficoltà solo durante i momenti di upgrade o aggiornamento di release.

Gli strumenti che SAP mette a disposizione funzionano solamente se si sono rispettate tutte le best practices di costruzione dei ruoli SAP.

 

Leggi qui sul perché durante gli upgrade di release le autorizzazioni SAP sono spesso dimenticate.

 

2) Co-Deployement o Embedded, quale architettura S/4HANA?

Esistono diversi modi per costruire l'architettura di S/4HANA. Sono necessari diversi componenti ad esempio:

  • Il Front End Server (FES)
  • Il Back End Server (BES)

 

Il primo (FES) rappresenta il SAP Gateway dove vengono esposte le APP (Applicazioni) nel secondo (BES) l'ERP. Per la collocazione del Gateway esistono diversi modi di deployement.

 

In generale dal punto di vista delle autorizzazioni la differenza è se il SAP Gateway (FES) è sulla stessa macchina dove risiede il backend oppure se è su una macchina diversa a se stante.

 

Nel caso in cui sia su su una macchina a se stante dovrai definire lì dei ruoli (chiamati Cataloghi e Gruppi) che definiscono le APP che un utente potrà vedere nell'interfaccia FIORI.

Mentre se il BES e FES coincidono avverrà tutto sulla stessa macchina.

 

Quali sono i punti di attenzione?

  • Definire i gruppi e cataloghi può richiedere tempo, attivati appena possibile per capire quali APP devono essere attivate e come devono essere raggruppate
  • Definisci una naming convention tra il BES e FES nel caso in cui siano diversi. Può essere utile nel caso sia necessario fare attribuzioni anche senza avere un Identity Management
  • Attenzione all'oggetto S_RFCACL nel caso in cui BES e FES siano due sistemi diversi. Questo deve essere opportunamente segregato

 

3) Business Partner BP

Questa rappresenta una delle novità più importati ed impattanti, anche per l'aspetto autorizzativo.

 

Una serie di transazioni legate all'anagrafica dei clienti e fornitori sono sostituite da una unica transazione, già presente in SAP, chiamata BP Business Partner.

 

Questa transazione a seconda dell'utilizzo può operare su clienti o su fornitori. Era già capitato in passato una sostituzione analoga ma per la parte legata alla movimentazione merce, ovvero la transazione MIGO.

 

A proposito, sai cosa significa MIGO?

 

  • M - Materials Management
  • I - Inventory Management
  • GO - Goods Movement

 

Esistono anche diverse versioni:

 

  • MIGO_GI: "Goods Issue"
  • MIGO_GO: "Goods Receipt Production Order " (GR for production order) MIGO_GR: "Goods Receipt" (GR from external procurement)
  • MIGO_GS: "Goods Movement Subsequent Adjustment (subsequent adjustment of material provided)
  • MIGO_TR: "Transfer Posting"

 

Cosa fare quindi?

  • Le transazioni vecchie possono rimanere nei ruoli in quanto se usate vengono indirizzate verso la nuova transazione BP
  • Gli oggetti autorizzativi delle transazioni XK* FK* o XD* etc sono comunque gli stessi (con alcune eccezioni). In alcuni casi alcune segregazioni potrebbero non funzionare, tieni conto di questo aspetto
  • Potrebbe essere utile lavorare sull'oggetto B_BUPA_FDG in questo caso tramite il BP Analyzer, comando BDT_ANALYZER è possibile vedere tutti i campi che possono essere segregati (attenzione, sono cablati nel codice e non possono essere personalizzati)

 

BDT_ANALYZER
  • Attenzione sei hai una matrice dei rischi non dimenticare che deve essere aggiornata o adeguata

 

3) SAP S/4HANA 1909

In passato SAP, durante i rilasci di nuove release, ha sempre deciso di limitare gli impatti sul business, se possibile.

 

Ovvero, nel caso delle funzionalità security, queste dovevano essere esplicitamente attivate una volta effettuato l'aggiornamento.

 

Altrimenti erano presenti nel sistema ma non attive. Dalla release 1909, per alcuni profili d'istanza SAP, è stato deciso di attivarli in modalità operativa. In altre parole se prima il valore di questi parametri era "conservativo" da questa release diventa il più restrittivo possibile.

 

Ecco quali sono:

Name Description Relevant SAP Note New recommended value
auth/check/calltransaction Behaviour of authority check during call transaction: Controls how CALL TRANSACTION statements in all programs react regarding missing entries in SE97 / table TCDCOUPLES.  If not set to 3, authorization checks are not properly enforced. 515130 3
auth/object_disabling_active Enables to globally switch off authorization checks for selected authorization objects (prerequisite for transaction AUTH_SWITCH_OBJECTS).  If not set to "N", a global deactivation would be possible.  - N
auth/rfc_authority_check Execution option for the RFC authority check: Controls the behaviour of enforced authentication and authorization checks when RFC function modules are called from remote.  If not set to 6, an information disclosure vulnerability exists for unauthenticated users. 2216306 6
gw/reg_no_conn_info Specific security-related additional functions for the RFC gateway are activated depending on which bits are set in this bitmask.  If not set to 255, not all security checks may be properly enforced in the RFC gateway. 2776748 255
gw/rem_start This setting specifies with which method an RFC server might be started on OS level from an external endpoint.  If not set to "DISABLED", attempts to utilize an improper or even insecure OS logon method (like RSH) might be possible. 2776748 DISABLED
icf/set_HTTPonly_flag_on_cookies This parameter is used to set the attribute HTTPonly for ICF cookies.  If not set to 0, javascript code running in the browser may inappropriately access sensitive cookies. 1277022 0
icm/HTTP/logging_0 An access log can be created with this parameter in which accesses from the Intranet and Internet are logged.  If not set properly, important information may be missing in logs. 2788140

PREFIX=/,LOGFILE=http_%y_%m.log,MAXFILES=2,MAXSIZEKB=50000,

SWITCHTF=month, LOGFORMAT=%t %a %u1 \"%r\" %s %b %Lms %{Host}i %w1 %w2

icm/HTTP/logging_client_0 An access log can be created with this parameter in which outgoing ICM calls to the Intranet and Internet are logged.  If not set properly, important information may be missing in logs. 2788140

PREFIX=/,LOGFILE=http_client_%y_%m.log,MAXFILES=2,MAXSIZEKB=50000,

SWITCHTF=month, LOGFORMAT=%t %a %u1 \"%r\" %s %b %Lms %{Host}i

icm/security_log This parameter is used to control the output of the security log from the ICM and SAP Web Dispatcher.  If not set properly, important information may be missing in logs. 2788140 LOGFILE=dev_icm_sec_%y_%m,LEVEL=3,MAXFILES=2,MAXSIZEKB=50000,SWITCHTF=month
login/disable_cpic If this parameter is not set to 1, incoming connections of the  type CPIC are not rejected.   Incoming connections of the type RFC are not affected.   - 1
login/password_downwards_compatibility This parameter is used to control whether the system stores password hashes also in an obsolete, outdated format for compatibility reasons.  If not set to 0, outdated hashes will be maintained that can be easily cracked by adversaries that are able to access the password hash storage tables. 1023437 0
login/password_hash_algorithm The hash value calculation can be improved with this parameter to make dictionary and brute force attacks more difficult. 2140269 encoding=RFC2307,algorithm=iSSHA-512,iterations=15000,saltsize=256
ms/HTTP/logging_0 This parameter is used to control the output of the log from the message server.  If not set properly, important information may be missing in logs. 2794817

PREFIX=/,LOGFILE=$(DIR_LOGGING)/ms-http-%y-%m-%d.log%o,

MAXFILES=7,MAXSIZEKB=10000,SWITCHTF=day,LOGFORMAT=%t %a %u %r %s %b %{Host}i

ms/http_logging This parameter is used to activate the log from the message server.  If not set properly, important information may be missing in logs. 2794817 1
rdisp/gui_auto_logout Automatic user logoff after inactivity time is controlled with this setting.  If not set, no auto logout will accour, making access to applications by improper personnel more likely.  - 1H
rdisp/vbdelete The parameter specifies the duration in days, after which an  update request is deleted. At the end of this period, the update  requests are deleted irrespective of their status. If the parameter  has not value 0, update requests could potentially deleted that are still required by the business to ensure the integrity of the data. 2441606 0
rfc/callback_security_method Permit or deny execution of RFC callbacks in accordance with configured whitelist and write corresponding entry in Security Audit Log.  If not set to 3, improper RFC callback attempts are still allowed. 2678501 3
rfc/ext_debugging Activate external (HTTP) debugging for RFC.  If not set to 0, debugging is possible. 668256 0
rfc/reject_expired_passwd Controls whether logon with expired or initial password via RFC is allowed or not.  If not set to 1, users with a non-productive password are able to remotely call RFC function modules. 1591259 1
wdisp/add_xforwardedfor_header Enables the inclusion of the client IP address the HTTP X-Forwarded-For header.  If not set to "TRUE", hte client IP adrress will not be added, making the determination of request routes for applications harder and reducing useful log information. 2788140 VERO
       

 

Vedi anche nota OSS: 2713544 - New security settings during conversion to S4HANA 1909 with SUM 2.0 SP6

 

4) Attiva funzionalità security se servono

Alcune nuove funzionalità sono disponibili pur non avendo S/4HANA, tuttavia durante questo passaggio può essere importante valutarli e pensare di attivarli.

 

Cosa? Ad esempio:

 

  • Ruoli PFCG legati al mandante, puoi finalmente fare in modo che la modifica dei ruoli sia legata all'apertura del mandante. Chiaramente nei sistemi produttivi. In questo modo non sarà possibile modificare il contenuto del ruolo nei sistemi di produzione (vedi OSS Note: 1723881 - Application of client-specific Customizing settings to role maintenance)
  • UCON è un acronimo che significa Unified Connectivity permette di tracciare tutte le chiamate verso i sistemi SAP, vedere cosa e chi viene richiamato e creare a seguito una whitelist per impedire chiamate non desiderate

 

5) Security Database, attiva la crittografia prima di partire

La sicurezza del database è uno degli aspetti importanti, oltre alla sicurezza applicativa guarda qui.

 

Attiva prima di partire la crittografia a livello di database HANA e sfrutta tutte le funzionalità security che questo database di offre.

 

Iscriviti al blog se ancora non lo hai fatto!

Topics: upgrade, S/4HANA Security, UCON, crittografia SAP, S/4HANA migration

Voglio iscrivermi!

Blog Aglea, cosa puoi trovare?

Ogni mercoledì pubblichiamo articoli, interviste e documenti relativi alla security SAP.

Cosa puoi trovare:

  • Suggerimenti su come mettere in sicurezza i sistemi SAP
  • Come fare a … (How To)
  • Checklist
  • Gli errori comuni che spesso vengono fatti in ambito Security SAP
  • Interviste con esperti del settore
  • Chi è AGLEA quale è la nostra vision security SAP

Post recenti

Post By Topic

Visualizza tutti