public static FabricEnrollment getFabricEnrollment()

in src/main/java/com/lambdajavablockchain/SecretsManagerUtil.java [93:117]


    public static FabricEnrollment getFabricEnrollment(String userId, String orgName) throws EnrollmentNotFoundException {

        String userPKSecretName = "fabric/orgs/" + orgName + "/" + userId + "/pk";
        String userCertsSecretName = "fabric/orgs/" + orgName + "/" + userId + "/certs";

        try {
            log.debug("Trying to retrieve " + userId + " credentials from AWS Secrets Manager");

            String pkAsString = SecretsManagerUtil.getSecret(userPKSecretName);
            String certString = SecretsManagerUtil.getSecret(userCertsSecretName);

            FabricEnrollment fabricEnrollment = null;

            log.info("Found users credentials in Secrets Manager");
            // Reconstruct PrivateKey from string
            PrivateKey privKey = SecretsManagerUtil.buildPrivateKeyFromString(pkAsString);

            // Create FabricEnrollment with Secrets Manager credentials
            fabricEnrollment = new FabricEnrollment(privKey, certString);
            return fabricEnrollment;
        } catch (SecretNotFoundException | NoSuchAlgorithmException | InvalidKeySpecException e) {
            log.warn("Credentials not found on Secrets Manager");
            throw new EnrollmentNotFoundException("Fabric credentials not found for user " + userId, e);
        }
    }