Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Function for RSA SHA-256 digital signature

sect55Apr 6 2021

I am attempting to write an Oracle function to authenticate against DocuSign using JWT. It requires RSA SHA-256 digital signature as outlined below:
The signature part of the JWT is a digital signature that enables DocuSign to verify that the JWT was created by your application and has not been modified since it was created. The first two parts of the JWT are signed with your application's private key (using the RSA SHA-256 digital signature algorithm) as shown in the diagram.
When Oracle function should I be using?
I'm using Oracle 19c (EE).
Robert

This post has been answered by Anton Scheffer on Apr 14 2021
Jump to Answer

Comments

Herald ten Dam
Hi,

you make a full export, but you do only a partial import (only user dsi). So are the sequences necessary for dsi created under another user, which you don't import?
Then you get errors, so find out in the original database to which user the sequences belong.

Herald ten Dam
http://htendam.wordpress.com
912609
Hi

Sorry, but the sequences are in the source database.
I've checked in user_sequences.
Liron Amitzi
Can you post the export.log and import.log?
912609
Hi,
Please find here enclosed extracts of the export log :

Connecté à : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
Export fait dans le jeu de car WE8MSWIN1252 et jeu de car NCHAR AL16UTF16
le serveur utilise le jeu de caractères WE8ISO8859P15 (conversion possible)

Prêt à exporter l'intégralité de la base de données ...
. export des définitions de tablespace
. export des profils
. export des définitions d'utilisateur
. export des rôles
. coût ressource export
. export des définitions de rollback segment
. export des liens de base de données (DATABASE LINKS)
. export des numéros de séquence
. export des alias de répertoire
. export des espaces de stockage des noms de contexte
. export des noms de bibliothèque de fonctions étrangères
. export des synonymes de type PUBLIC
. export des synonymes de type PRIVATE
. export des définitions de type d'objet
. export des actions et objets procéduraux du système
. export des actions et objets procéduraux de pré-schéma
. export des définitions de cluster
....
. Prêt à exporter les tables DSI ... via le chemin classique...
. . export de la table ACTE_ACTEACTEUR 0 lignes exportées <
. . export de la table ACTE_ACTEAGENT 0 lignes exportées <
. . export de la table ACTE_ACTECDARR 0 lignes exportées <
. . export de la table ACTE_ACTEMEDICAL 0 lignes exportées <
. . export de la table ACTE_ACTEMEDICAL_SAUV 0 lignes exportées <
. . export de la table ACTE_CCAM 9322 lignes exportées <
.....
.....
. export des synonymes
. export des vues
. export des contraintes d'intégrité référentielle
. export des procédures stockées
. export des opérateurs
. export des types d'index
. export des index bitmap, fonctionnels et extensibles
. export des actions post-tables
. export des déclencheurs
. export des vues matérialisées
. export des journaux de clichés
. export des files d'attente de travaux
. export des groupes de régénération et fils
. export des dimensions
. export des actions et objets procéduraux de post-schéma
. export des table historique utilisateur
. export des valeurs par défaut et options d'analyse du système
. export des statistiques
Procédure d'export terminée avec succès sans avertissements.
(export procedure successfully completed without warning).


Please find here enclosed the errors in the import log :

Connecté : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

Fichier d'export créé par EXPORT:V10.02.01 via le chemin classique
import effectué dans le jeu de caractères WE8MSWIN1252 et le jeu NCHAR AL16UTF16
le serveur d'import utilise le jeu de caractères WE8ISO8859P15 (conversion possible)
IMP-00032: L'instruction SQL dépasse la longueur du tampon d'enregistrement
IMP-00008: instruction non reconnue dans le fichier d'export:
STORAGE(INITIAL 65536 FREELISTS 4 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SYSAUX" LOGGING NOCOMPRESS
. Import d'objets DSI dans DSI
. . Import de la table "ACTE_ACTEACTEUR" 0 lignes importÈes <
. . Import de la table "ACTE_ACTEAGENT" 0 lignes importÈes <
. . Import de la table "ACTE_ACTECDARR" 0 lignes importÈes <
. . Import de la table "ACTE_ACTEMEDICAL" 0 lignes importÈes <
.....
.....
IMP-00041: Attention : objet créé avec erreurs de compilation
"CREATE TRIGGER "DSI"."distribution" "
"BEFORE INSERT ON "DSI"."PHA_DISTRIBUTION" "
"REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW "
""
"declare"
" sqddd integer;"
"begin"
" select pha_distribution_seq.nextval into sqddd from dual;"
" :new.id_distribution := sqddd;"
"end;"
IMP-00041: Attention : objet crÈÈ avec erreurs de compilation
"CREATE TRIGGER "DSI".SUPPR_ACTE_CDARR"
" AFTER DELETE"
" ON ACTE_ACTECDARR"
" FOR EACH ROW"
" DECLARE"
""
" BEGIN"
" INSERT INTO FIC_HISTORIQUESUPPRESSION (IDENTIFIANT, ENTITEMODIFIEE,"
" IDENTIFIANTOBJET, DATESUPPRESSION) VALUES (FIC_HISTORIQUESUPPRESSION_SEQ.N"
"EXTVAL, 'ActeCdArr', TO_CHAR(:OLD.IDENTIFIANT), SYSTIMESTAMP);"
"END SUPPR_ACTE_CDARR;"
...
Début de l'activation des contraintes...
(Start enabling constraints...)
Fin de l'import réussie avec avertissements
(End of import completed with warnings)

The sequences have not been created. I don't know why.
The Imp-41 errors on the triggers are related to the absence of the sequences.

I've managed to issue the ddl of the sequences from the exported db
using the package "dms_meta.get_ddl" and to recreate them in the import db in the 'DSI' schema.

I don't understand the message related to the storage clause in the 'sysaux' tablespace
since there is no table or index of the 'dsi' schema stored in 'sysaux'.

Thank you for your help.
Liron Amitzi
I don't know why the synonyms are not imported, but I would do several things:
1. The NLS_LANG does not match the characterset in the database, please try to export and import again when the NLS_LANG has the WE8ISO8859P15 character set.
2. Please perform the import with show=y and post the output, Id like to check what is the failing command with imp=32 and if the synonyms are there.

Liron
912609
Hi Liron,

I performed the import with show=Y (without changing the nls_lang).
The "create synonyms" instructions are present in the import log file but not the "create sequences".

I still have the imp-00032/imp-00008 message related to the "SYSAUX" tablespace.
I don't understand why because no objects of the 'DSI' schema are stored in SYSAUX.

Extract of the import log :

Connecté à : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

Fichier d'export créé par EXPORT:V10.02.01 via le chemin classique
import effectué dans le jeu de caractËres WE8MSWIN1252 et le jeu NCHAR AL16UTF16
IMP-00032: L'instruction SQL dÈpasse la longueur du tampon d'enregistrement
IMP-00008: instruction non reconnue dans le fichier d'export:
STORAGE(INITIAL 65536 FREELISTS 4 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SYSAUX" LOGGING NOCOMPRESS
. Import d'objets DSI dans DSI
"ALTER SESSION SET CURRENT_SCHEMA= "DSI""
"CREATE TABLE "ACTE_ACTEACTEUR" ("IDENTIFIANTACTE" NUMBER(10, 0) NOT NULL EN"
"ABLE, "DATEDECLARATION" DATE NOT NULL ENABLE, "MATRICULE" VARCHAR2(10)) PC"
"TFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS"
" 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_MEDICAL" LOGGING N"
"OCOMPRESS"
. . Table "ACTE_ACTEACTEUR" ignorée

"ALTER SESSION SET CURRENT_SCHEMA= "DSI""
"ALTER TABLE "ACTE_ACTEACTEUR" ADD PRIMARY KEY ("DATEDECLARATION", "IDENTIF"
"IANTACTE") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 6"
"5536 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_INDE"
"X" LOGGING ENABLE"
"CREATE TABLE "ACTE_ACTEAGENT" ("IDENTIFIANTACTE" NUMBER(10, 0) NOT NULL ENA"
"BLE, "MATRICULE" VARCHAR2(10), "DATEDECLARATION" DATE NOT NULL ENABLE) PCT"
"FREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS "
"1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_MEDICAL" LOGGING NO"
"COMPRESS"
. . Table "ACTE_ACTEAGENT" ignorée
...
...
CREATE INDEX "I_INTERFORCE_CIP1_2GRA_TXT" ON "PHA_INTERACTION_FORCEE" ("CIP"
"1" , "CIP2" , "ID_N_GRAVITE" , "N_TEXTE" ) PCTFREE 5 INITRANS 4 MAXTRANS 2"
"55 STORAGE(INITIAL 11534336 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAU"
"LT) TABLESPACE "TS_INDEX" LOGGING"
"CREATE INDEX "I_IFORCEE_PRESC1" ON "PHA_INTERACTION_FORCEE" ("ID_PRESCRIPTI"
"ON1" ) PCTFREE 5 INITRANS 4 MAXTRANS 255 STORAGE(INITIAL 5242880 FREELISTS"
" 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_INDEX" LOGGING"
"CREATE INDEX "I_IFORCEE_PRESC2" ON "PHA_INTERACTION_FORCEE" ("ID_PRESCRIPTI"
"ON2" ) PCTFREE 5 INITRANS 4 MAXTRANS 255 STORAGE(INITIAL 5242880 FREELISTS"
" 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_INDEX" LOGGING"
"ALTER SESSION SET CURRENT_SCHEMA= "DSI""
"ALTER TABLE "PHA_INTERACTION_FORCEE" ADD PRIMARY KEY ("ID") USING INDEX PC"
"TFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 5242880 FREELISTS 1 FREELI"
"ST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_INDEX" LOGGING ENABLE"
"CREATE TABLE "PHA_LIV_ADMINISTRATION" ("LAD_CIP" VARCHAR2(13) NOT NULL ENAB"
"LE, "LAD_ID" NUMBER NOT NULL ENABLE, "ACTIF" VARCHAR2(3)) PCTFREE 10 PCTUS"
"ED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 131072 FREELISTS 1 FREELIST G"
"ROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "TS_MEDICAL" LOGGING NOCOMPRESS"
. . Table "PHA_LIV_ADMINISTRATION" ignorÈe
...
...
.CREATE SYNONYM "FIC_TYPEACTIVITE" FOR "PMSI_PROVENANCEENTREE""
...
Fin de l'import réussie avec avertissements.



There are unfortunately no "CREATE SEQUENCE" instruction although it was a full export.

Can I change the NLS_LANG in the import script and do
set NS_LANG=FRENCH_FRANCE.WE8ISO8859P15
juste before importing ?

Thank you for your answer,
best regards
1 - 6
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Jun 5 2023
Added on Apr 6 2021
34 comments
6,654 views