IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

security mode dans app.config


Sujet :

C#

  1. #1
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut security mode dans app.config
    Bonjour, j'ai du mal à configurer mon option de sécurité de mon fichier app.config

    Mon but final est d'appeler un webservice (java ejb, qui fonctionne) en authentifié.

    J'ai beau mettre tout et "n'importe quoi" j'obtiens soit qu'il veux être en https(moi je suis en http) ou le message
    [EJB:010160]Security Violation: User: '<anonymous>' has insufficient permission to access EJB: type=<ejb>, application=testWSAnnot, module=testWSAnnot.jar, ejb=ServiceDomaineBeanSecure, method=createDeal, methodInterface=ServiceEndpoint, signature={java.lang.String}.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     <binding name="ServiceDomaineBeanSecurePortBinding" closeTimeout="00:01:00"
    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
    maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
    messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
     useDefaultWebProxy="true">
     <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
     maxBytesPerRead="4096" maxNameTableCharCount="16384" />
    <security mode="TransportCredentialOnly">
    <transport clientCredentialType="Basic"/>
    </security>
    </binding>


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      POCWSSECURE.ServiceDomaineBeanSecureClient ws;
                POCWSSECURE.createDealRequest req;
                long id;
     
                ws = new POCWSSECURE.ServiceDomaineBeanSecureClient();
               ClientCredentials  cred=ws.ClientCredentials;
               cred.UserName.UserName = "utilisateur1";
               cred.UserName.Password = "utilisateur1"; 
                id = ws.createDeal("Bruno");
    y aurait il une bonne âme pour m'éclairé car je suis sur ce point depuis au moins 2j

    merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Salut,

    cet élément est important

    Mon but final est d'appeler un webservice (java ejb, qui fonctionne) en authentifié.
    quels sont les mécanismes pour l'authentification ?
    C'est souvent l'élément le plus complexe à mettre en place pour de l'interop entre technos.

  3. #3
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    Heu, le problème c'est que je sais pas trop.
    Mon code Webservice EJB est le suivant, il est déployé sur un serveur weblogic.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    package com.p.service;
     
    import javax.annotation.security.RolesAllowed;
    import javax.ejb.EJB;
    import javax.ejb.Stateless;
    import javax.jws.WebMethod;
    import javax.jws.WebService;
     
    import com.p.domaine.Domaine;
     
    @Stateless
    @WebService
    	@RolesAllowed({"utilEJB","adminEJB"})
    public class ServiceDomaineBeanSecure {
     
    @EJB
    Domaine domaine;
     
    	@WebMethod
    	public long createDeal(String nom) {
    		return domaine.createDeal(nom); 
    	}
     
    	@WebMethod
    	public long getDeal(String nom) {
    		return domaine.getDeal(nom);
    	}
     
    }
    depuis mon autre client java je lui passe les user/mdp comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ServiceDomaineBeanSecure port =service.getServiceDomaineBeanSecurePort();			
    			BindingProvider bp = (BindingProvider) port;
    			bp.getBinding();
     
    			Map<String, Object> ctx = bp.getRequestContext();
    			ctx.put(BindingProvider.USERNAME_PROPERTY, "utilisateur1");
    			ctx.put(BindingProvider.PASSWORD_PROPERTY, "utilisateur1");

    edit:je cherche dans leserveur si il y a une méthode par défaut

    c'est mon serveur (weblogic) qui me gere les utilisateur/groups


    le seul truc que j'ai trouvé c'est ça
    mon model est DDOnly
    Choose one of these security models:

    * Deployment Descriptors Only (DDOnly)


    For EJBs and URL patterns, this model uses only the roles and policies in the J2EE deployment descriptors (DD); the Administration Console allows only read access for this data. With this model, EJBs and URL patterns are not protected by roles and policies of a broader scope (such as a policy scoped to an entire Web application). If an EJB or URL pattern is not protected by a role or policy in the DD, then it is unprotected: anyone can access it.


    For application-scoped roles in an EAR, this model uses only the roles defined in the WebLogic Server DD; the Administration Console allows only read access for this data. If the WebLogic Server DD does not define roles, then there will be no such scoped roles defined for this EAR.


    For all other types of resources, you can use the Administration Console to create roles or policies. For example, with this model, you can use the Administration Console to create application-scoped policies for an EAR.


    Applies for the life of the deployment. If you want to use a different model, you must delete the deployment and reinstall it.
    * Customize Roles Only (CustomRoles)


    For EJBs and URL patterns, this model uses only the policies in the J2EE deployment descriptors (DD). EJBs and URL patterns are not protected by policies of a broader scope (such as a policy scoped to an entire Web application). This model ignores any roles defined in the DDs; an administrator completes the role mappings using the Administration Console.


    For all other types of resources, you can use the Administration Console to create roles or policies. For example, with this model, you can use the Administration Console to create application-scoped policies or roles for an EAR.


    Applies for the life of the deployment. If you want to use a different model, you must delete the deployment and reinstall it.
    * Customize Roles and Policies (CustomRolesAndPolicies)


    Ignores any roles and policies defined in deployment descriptors. An administrator uses the Administration Console to secure the resources.


    Performs security checks for all URLs or EJB methods in the module.


    Applies for the life of the deployment. If you want to use a different model, you must delete the deployment and reinstall it.
    * Advanced (Advanced)

    You configure how this model behaves by setting values for the following options:
    o When Deploying Web Applications or EJBs

    Note:

    When using the WebLogic Scripting Tool or JMX APIs, there is no single MBean attribute for this setting. Instead, you must set the values for the DeployPolicyIgnored and DeployRoleIgnored attributes of RealmMBean.

    o Check Roles and Policies (FullyDelegateAuthorization)
    o Combined Role Mapping Enabled (CombinedRoleMappingEnabled)

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    désolé mais le java et moi ça fait 2.

    Tu peux jouer avec la sécu WCF a ce niveau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <security mode="TransportCredentialOnly">
    <transport clientCredentialType="Basic"/>
    </security>
    WCF permet de gérer 2 niveaux de sécu : au niveau Transport et au niveau Message. Il faudrait essayer de savoir ce qu'attend ton ws java en essayant par exemple de logger la requête SOAP.

  5. #5
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    ok comment je fait pour logger la requête SOAP?

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Citation Envoyé par oxo35 Voir le message
    ok comment je fait pour logger la requête SOAP?
    encore une fois, je ne connais pas java et c'est pas le bon forum pour configurer ton service pour logger les reqûetes.

    désolé

  7. #7
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    j'ai réussi à logger ma requête depuis mon client java mais c'est bizarre il ln'y a pas mes id

    ---[HTTP request]---
    SOAPAction: ""
    Accept: text/xml, multipart/related, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
    Content-Type: text/xml;charset="utf-8"
    <?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body>
    <ns2:createDeal xmlns:ns2="http://service.p.com/">
    <arg0>ds</arg0></ns2:createDeal></S:Body></S:Envelope>--------------------

  8. #8
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    Citation Envoyé par cybermaxs Voir le message
    encore une fois, je ne connais pas java et c'est pas le bon forum pour configurer ton service pour logger les reqûetes.

    désolé
    et en .net tu sais logger une requete SOAP?

  9. #9
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Citation Envoyé par oxo35 Voir le message
    et en .net tu sais logger une requete SOAP?
    oui ; sans rentrer dans les détails, ce lien donne quelques exemple de config. Les logs sont à visualiser avec SvcTraceViewer.

  10. #10
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    Citation Envoyé par cybermaxs Voir le message
    oui ; sans rentrer dans les détails, ce lien donne quelques exemple de config. Les logs sont à visualiser avec SvcTraceViewer.
    ok mais comment telecharger juste SvcTraceViewer.exe sans telecharger le gros pak de 2gigs ?

  11. #11
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Citation Envoyé par oxo35 Voir le message
    ok mais comment telecharger juste SvcTraceViewer.exe sans telecharger le gros pak de 2gigs ?
    désolé mais je pense qu'il faut le Windows SDK pour l'utiliser.
    Je ne veux pas t'envoyer sur de fausses pistes. Encore une fois, je ne connais ces mécanismes en java. Il y a tout un tas de standards que java peut implémenter. Peut être le forum java te conseillera mieux ?

  12. #12
    Membre averti
    Inscrit en
    Mars 2010
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 33
    Par défaut
    j'ai reussi a choper ma requete soap recu de mon serveur

    mais maintenant j'ai une autre erreur,

    MustUnderstand headers:[{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}Security] are not understood
    mais bon je cherche encore,
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/02/2009, 13h00
  2. Réponses: 1
    Dernier message: 07/07/2008, 10h41
  3. retiré le nom base de donnée dans app.config
    Par jeepibmx dans le forum VB.NET
    Réponses: 1
    Dernier message: 28/01/2008, 19h38
  4. Réponses: 8
    Dernier message: 06/08/2007, 11h32
  5. Réponses: 2
    Dernier message: 23/03/2007, 14h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo