Projet

Général

Profil

« Précédent | Suivant » 

Révision 19b58bab

Ajouté par Remy Menard il y a plus de 11 ans

Version 1.9

  • All:
    - use TLS for secured links
    - SigMa is now fully functionnal
    - completed documention
    - a lot of bugs fixed!
  • SigMa:
    - signature creation from the canonical form of the event
    - signature creation using ECDSA algorithm
    - signature is correctly verified
  • ETa:
    - manage the extension identifying the owner of the event
    - if no identity is provided, the identity of the certificate is used
  • EpcisPHi:
    - access to the web interface of policy management is made by
    certificate
  • OMeGa:
    - if no identity is provided, the identity of the certificate is used
  • IoTa-Installer:
    - create and use certificates for TLS
    - configure Apache Tomcat for TLS
  • Greyc letters figures:
    - show SigMa library (SigMa-Commons)

Voir les différences:

ETa/ETa/src/main/java/fr/unicaen/iota/eta/query/IDedQueryOperationsWebService.java
/*
* This program is a part of the IoTa Project.
* This program is a part of the IoTa project.
*
* Copyright © 2012 Université de Caen Basse-Normandie, GREYC
* Copyright © 2012-2013 Université de Caen Basse-Normandie, GREYC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
......
*/
package fr.unicaen.iota.eta.query;
import fr.unicaen.iota.eta.constants.Constants;
import fr.unicaen.iota.eta.utils.Constants;
import fr.unicaen.iota.eta.soap.IDedEPCISServicePortType;
import fr.unicaen.iota.tau.model.Identity;
import java.security.Principal;
......
private static final Log LOG = LogFactory.getLog(IDedQueryOperationsWebService.class);
@Resource
private WebServiceContext wsContext;
protected WebServiceContext wsContext;
protected QueryOperationsModule queryModule;
protected final Identity anonymous;
public IDedQueryOperationsWebService() {
anonymous = new Identity();
anonymous.setAsString(Constants.XACML_DEFAULT_USER);
}
public IDedQueryOperationsWebService(QueryOperationsModule queryModule) {
this();
this.queryModule = queryModule;
}
......
private void checkAuth(Identity id) throws SecurityExceptionResponse {
Principal authId = wsContext.getUserPrincipal();
if (authId == null || id == anonymous) {
return;
}
if (!queryModule.canBe(authId, id)) {
throw new SecurityExceptionResponse(authId.getName() + " isn't allowed to pass as " + id.getAsString());
if (authId == null) { // no TLS
if (!Constants.XACML_ANONYMOUS_USER.equals(id.getAsString())) {
throw new SecurityExceptionResponse("Can't allowed to pass as " + id.getAsString() +
" without authentication. Only " + Constants.XACML_ANONYMOUS_USER + " is allowed.");
}
} else { // TLS
if (!queryModule.canBe(authId, id)) {
throw new SecurityExceptionResponse(authId.getName() + " isn't allowed to pass as " + id.getAsString());
}
}
}

Formats disponibles : Unified diff