Ich habe nun ein Problem:
wenn ich mit e.InnerException die Exception abfrage dann wird die NullRefernezException ausgelöst!?!?!
Vielleicht löse ich die Exception beim WebService falsch aus:
throw new Exception("",System.UnauthorizedAccessException)
Hallo!
Ich möchte folgendes realisieren:
Ich benutze auf mienen ASP.NET-Site ein WebServices das eine bestimmte Ausnahme(System.UnauthorizedAccessException) auslösen kann, ich kann aber diese nicht mit try-catch abfangen:
try
{
wsProxy.anmeldung(name,password);
}
catch(System.UnauthorizedAccessException)
{
/* Wird leider nicht ausgeführt */
}
catch(System.Web.Services.Protocols.SoapException)
{
/* Wird ausgeführt, obwohl es sich um eine UnauthorizedAccessException handelt*/
}
In der Exception-Message steht dann:
System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.UnauthorizedAccessException:........ --- End of inner exception stack trace ---
Wie kann ich also apeziell die UnauthorizedAccessException vom WebService abfangen, obwohl eine SoapException ausgefürt wird.
Hallo!
Ich habe folgenedes Problem:
Auf meiner ASP.NET-WebSite werden Bilder von der lokalen Platte ins Image-WebForm geladen(Pfadangabe mit image1.ImageUrl="file:///C:\Inetpub\wwwroot\WebSite\Images\Blind.JPG"). Diese Seite wird über eine SSL-Verbindung aufgerufen. Wenn eine aspx-Form geladen die ein Bild enthält bekomme ich immer folgende Fehlermeldung:
Die Seite enthält sowohl sichere als auch nicht sichere Objekte.
Möchten Sie die nicht sicheren Objekte anzeigen?
Woran liegt das?
Was muss ich noch machen, um den Fehler zu beseitigen?
Original von Waschbecken
Füg mal unter Eigenschaften der Website im IIS-Manager, Website, IP-Adresse Weitere Optionen, noch die 443 hinzu für die IP bzw. domain.
Die Standarteinstellungen sind schon drin.
TCP-Anschluss : Port 80
SSL-Anschluss : Port 443
Hallo zusammen,
ich habe mir ein SSL-Zertifikat erstellt und dieses auf meinem Webserver eingerichtet.
Wenn ich meine Seite anzeigen lassen will kommt natürlich die 403 Fehlermeldung, dass ich mit https:// arbeiten muss.
Aber wenn ich https:// verwende, dann bekomme ich Die Seite kann nicht angezeigt werden
Kann mir bitte einer sagen, was ich falsch mache?
Danke.
Hallo zusammen!
Ich habe ein Problem mit dem Protieren eines ASP.NET-Projektes. Denn wenn ich die ganzen Dateien die unter meinem, lokalen IIS auf ein anderes Rechner mit IIS kopiere und versuche diesen dann auszuführen bekomme ich folgende Meldung im Browser angezeigt:
Die XML-Seite kann nicht angezeigt werden
Die XML-Eingabe kann nicht angezeigt werden, wenn Stylesheet XSL verwendet wird. Beheben Sie den Fehler und klicken Sie dann auf Aktualisieren, oder wiederholen Sie den Vorgang später.
Ein Name beginnt mit einem ungültigen Zeichen. Fehler beim Bearbeiten der Ressource 'http://localhost/GUI_Prototyp_B2B/'. ...
<%@ Page language="c#" Inherits="HauptSeite" CodeFile="HauptSeite.aspx.cs" %>
-^
Das komische ist, dass das ganze auf mienem Rechner wunderbar lief. Der einzige Unterschied liegt daran, dass auf dem anderen Rechner neues .NET Framework 2.0 installiert ist, bei mir läuft aber noch das alte Framework.
Was muss ich noch machen damit das Projekt auf jeglichen Rechner(mit Windows, IIS) laufen kann?
Hallo!
Ich habe einen WebService geschrieben dessen Anfragen und Antworten mit X.509-Zertifikaten verschlüsselt werden. Dazu benutze ich die Bibliotheken von WSE 2.0.
Nun habe ich das ganze im Intranet getestet, wobei der WebServices auf einem Rechner mit IIS läuft und der Client auf einem anderen Rechner. Dabei dauert die Verschlüsselung etwas zu lange, laut des Timers den ich in meine Anwendung eingesetzt habe ganze 13 sec..
Genauer gesagt an dieser Stelle:
servProxy.RequestSoapContext.Security.Elements.Add( new EncryptedData( token ) );//Verschlüssele die Anfrage mit X.509-Token
Woran liegt denn das, bzw. wie kann man an dieser Stelle die Performance verbessern?
Hallo, zusammen!
Brauche wieder mal eure Hilfe!
Ich habe mit VS .NET 2003 ein Windows-Dienst programmiert und eine Installationsroutine dazu geschrieben(auch mit VS .NET 2003).
Nun habe ich VS .NET 2005 mit Framework 2.0 installiert und den genannten Projekt in eine VS 2005-Projekt konvertiert. Hat auch wunderbar fuktioniert.
Nun, wenn ich die Software installieren möchte, bekomme ich bei der Installation eine Fehlermeldung, diese besagt, dass der Dienst schon vorhanden ist.
Und noch eine Meldung:
Could not found file: 'C:\Progarmme\Ordner\Anwendungsname.InstallState'
Kennt das Problem schon jemand?
Danke für die schnelle Hilfe!
Übrigens, da der Parameter untypisiert ist, kann man diesen so komplex gestalten wie man möchte.
Praktisch! 😁
Hallo zusammen!
Ich habe iregendwo, iregendwann mal gelesen, dass in .NET Framework 2.0, bei den Threads eine Möglichkeit geben sollte, Threads direkt mit Parameter aufzurufen. Nun wollte ich mich damit beschäftigen, finde aber auf einmal nichts dazu.
Gibt es nun sowas, oder habe ich da einfach was falsch verstanden.
Dann kriege ich die IndexOutOfRangeException:
Warning: A StringBuilder buffer has been overflowed by unmanaged code. The process may become unstable. Insufficient capacity allocated to the StringBuilder before marshaling it.
Hallo!
Ich habe ein Problem mit dem Aufruf einer Funktion aus dem Unmanged Code.
Die Funktion in C-Notation lautet so:
int ReadCISharedMem(char* data, int StreamNo);
Die Funktion deklariere ich und rufe auf, auf folgende Seise:
[DllImport("Bcwin.dll")]
private static extern int ReadCISharedMem(ref string data, int StreamNo);
public int ReadCISharedMemImpl(ref string data, int StreamNo)
{
return ReadCISharedMem(ref data, StreamNo);
}
Nur kriege ich dabei folgende, sonderbare exception:
The runtime has encountered a fatal error. The address of the error was at 0x79e755fc, on thread 0xd9c. The error code is 0xc0000005. This error may be a bug in the CLR or in the unsafe or non-verifiable portions of user code. Common sources of this bug include user marshaling errors for COM-interop or PInvoke, which may corrupt the stack.
Für mich heißt das, dass der char-Prameter der als Zeiger realisiert ist, hier Probleme macht und die Funktion anders aufgerufen werden muss.
Die Frage lautet nun, wie?
Leider nicht ganz getroffen!
Ich brauche den Handle von den selben Prozess was ich gerade ausführe.
Also so in der Richtung:
class Anwendung
{
int handle = getCurrentHandle();
}
Hallo zusammen!
Ich brauche unbedingt den Handle bzw. doe ProzessId von den Prozess meiner Anwendung. Wie kann das hinbekommen?
Hallo zusammen!
Ich habe ein Problem mit den Werten in einem Datagrid. Wenn in einer Zelle ein Wert aus mehereren Wörter besteht, wird automatisch ein Umbruch im Zeileninhalt gemacht. Das heißt z.B wenn ein Preis dargestellt wird, bestehnd aus Wert und anschließenden Währung(12,99 EU), wird der decimal-Wert an einer Zeile dargestellt danach kommt ein Umbruch und die Währung. In HTML kann man das so ausdrucken:
<td> 12,99<br /> EU </td>
Ich möchte aber dass der Inhalt der Zeile(hier Preis), ohne Umbruch dargestellt wird. Also so:
<td> 12,99 EU </td>
Da gibt es bestimmt irgendwelche Formatirungsregeln für die Zellen eines Datagrids, aber ich finde leider nichts dazu. Bin also wieder mal auf eure Hilfe angewiesen!
Danke!
Im Prinzip geht es mir nur darum, die Daten in einem DataGrid Benutzerfrundlich darzustellen. So dass ich in der Spalte "Farben" nicht Ziffern stehen sondern "lesbare" Farbenwerte.
Das problem habe ich nun mit einem typisierten Dataset gelöst, indem ich im XSD-Schema eine neue Spalte hinzufüge und diese dann entsprechend(wie du es schon gesagt hast) mit Werten fülle.
Hallo!
Folgendes Szenario: Es gibt eine Tabelle, mit der Spalte namens "Farben" diese enthält int-Werte die eine enumeration-Auswahl darstellt, d.h wenn der Wert der Zelle 0 dann entspricht es einem String "Rot", 2 -> "Grün", 3-> "Blau" usw.. Das heißt also, dass wenn ich die Tabelle einfach mit einem DataSet lese und mit einem DataGrid darstelle, dann stehen da nur Zahlen in der Spalte.
Ich möchte aber, dass anstatt dieser Spalte mit Ziffren eine Spalte mit Strings steht die, die Farben beschreiben.
Was kann man da machen?
Ich habe den Fehler gefunden!
Es lag daran dass, die definierte XSD-Struktur nicht den Inhalt der Tabelle entspricht, die Datentypen stimmten nicht überein! Somit konnte ich auf die Klassen-Eigenschaften nicht zugreifen da die Struktur überhaupt nicht gefühlt werden konnte und der DataGrid mit dem default-DataSet gefühlt wurde.
Hallo zusammen!
Ich habe ein Problem mit einem typisierten DataSet den ich von einem WebService bekomme, z.B.:
Products dsProducts = servProxy.getProducts();
wenn ich diesen an ein DataGrid binde, dann funktioniert alles wunderbar. Wenn ich aber uf die Werte zugreifen möchte z.B.:
//Zugriff auf ProductName-Spalte in der ersten Zeile der Products-Tabelle
string s = dsProducts.Products[0].ProductName;
dann kriege ich die Exception dass die Zeile 0 gar nicht gibt, obwohl der DataGrid mir fröhlich ganz schön viele Werte/Zeilen anzeigt.
Wenn ich auch die Anzahl der Zeilen abfrage mit:
int zeilen = dsProducts.Products.Count;
dann kriege auch ich als Ergebniss 0!
Was mache ich falsch?
Hallo zusammen!
Folgendes Problem liegt an:Ich kriege von einem WebService ein DataSet als Rückgabewert, diesen bilde ich auf der Seite mit einem DataGrid ab. Das Problem besteht darin, dass die decimal-Werte immer hintren mit Nullen aufgefüllt werden. Also wenn der Wert der Zelle 75 ist, dann wird im Datagrid 75,000000000000 dargestellt.
Was kann man da machen, damit die nutzlosen Nullen nicht mehr angezeigt werden?
Hmmm..
so geht's:
<asp:HyperLink id=HyperLink1 runat="server" Text="Details" NavigateUrl='<%# "EinsatzstellenKarte.aspx?No=" + DataBinder.Eval(Container.DataItem, "Customer No_") %>'></asp:HyperLink>
Hallo Leute!
Ich habe ein Problem und zwar möchte ich von einem Datagrid einen Link auf einer Seite machen wo angezeigte Datensatz detailiert angezeigt wird. Dazu muss ich eine Variable an die neue Seite übergeben, die den Schlüssel zum Datensatz enthält. Ich mache es so:
<asp:datagrid DataSource="<%# Einsatzst %>" DataMember="Einsatzstellen">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:HyperLink id=HyperLink1 runat="server" Text="Detail" NavigateUrl='EinsatzstellenKarte.aspx?No=<%# DataBinder.Eval(Container.DataItem, "Customer No_") %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
Auf der Zielseite möchte den übergeben Parameter lesen:
Request.QueryString["No"].ToString();
Nur leider wird nur dieser Wert gelesen: **:::
Was bedeutet das, was mache ich falsch?
Danke!
Einen guten Beispiel dazu gibt es hier:
http://www.microsoft.com/germany/msdn/library/net/aspnet/ASPNETDatenbindungFuerEigeneObjekteTeil1.mspx
Danke für die Hilfe, aber ch wollte nur wissen wie ich diese Daten in einer Tabelle darstellen kann?
Hallo!
Ich möchte folgendes realsieren:
Es gibt ein WebService deren Funktion einen komplexen Datentyp als Ergebniss liefert, was auch noch ein Array ist, z.B.:
[WebMethod]
public Person[] getPersonArray()
{
....
}
class Person
{
public string name;
public string vorname;
}
Nun, möchte ich den Rückgabewert in einer Tabelle darstellen. Womit/Wie kan man es am besten realisieren?
Tut mir leid, ich nehme alles zurück.
Es liegt daran, dass der WebServices nicht unter meinem angemedeten Account läuft, d.h der läuft unter selben Account wie devenv.exe(führt WebServices aus) läuft, dieser hat aber keine Berechtigung für den Zugriff auf die Zertifikate.
Folgende Einstellungen haben mir also gefehlt(für AsymetricEncryption example WSE 2.0):
1. Die Schlüssel und Zertifikate müssen so installiert werden für die asynchrone Verschlüsselung:
Aktueller Benutzer->Andere Personen->Server Public.cer(Client verschlüsselt ausegehende Daten)
Lokaler Computer->Eigene Zertifikate->Server Private.pfx(Server entschlüsselt eingehende Daten und verschlüsselt ausgehende Daten)
2. Die Zugiffsrechte für die Zertifikate können über das WSE X.509 Certifikate Tool gesetzt werden. Einfach den Zertifikat auswählen(hier Lokaler Computer->Eigene Zertifikate->Server Private.pfx ) und "View Private Key File Properities" aufrufen, unter Sicheheit könnte man zu Testzwecken erstmal ein "Jeder"-Account angelegt werden der alle Zugriffsrechte auf den Zertifikat hat.
Hallo zusammen!
Ich bin am verzweifeln, sitze schon seit mehrere Wochen an den Beispielen zur Verschlüsselung der Daten zwischen Webservices mit WSE und krieg kein einziges Beispiel zum laufen!?!?! X(
Im groben versuche ich fongendes Szenario zu implementieren: Ein Client stellt eine Anfrage an ein WebServices dieses leifert einen Rückgabewert zurück, das ganze wird mit X.509-Zertifikaten asynchron verschlüsselt.
Zum Üben habe ich mir den Beispiel genommen das mit WSE 2.0 mitinstalliert wird, nennt sich AsymmetricEncryption. Dabei krieg ich immer folgenden Fehler: Refereced security token could not be retrieved. So wie es aussieht funktioniert was mit den X.509-Zertifikate nicht so richtig. Also hier die wichtigsten Einstellungen:
X.509-Key für WS-Client: Aktueller Benutzer->Eigene Zertifikate->Client Private.pfx(verschl. ausgehendes SOAP eines WS-Clients)
X.509-Zertifikat für WS: Lokaler Computer->Eigene Zertifikate->Server Public.cer(entschlüsselt eingehendes SOAP bei Webservice)
X.509-Abschnitt aus web.config von WS:<x509 storeLocation="LocalMashine" verifyTrust="false" />
Die Zertifikate stammen auch von den Beispielen die mit WSE 2.0 mitinstalliert wurden.
Die Programmierung sieht so aus:
StockServiceWse serviceProxy = new StockServiceWse();
X509SecurityToken token = AppBase.GetClientToken( false );
serviceProxy.RequestSoapContext.Security.Elements.Add( new EncryptedData( token ) );//Dieses Token kann nicht richtig(wie ich vermute) von den InputFilter des WS verarbeitet werden
string[] symbols = {"FABRIKAM", "CONTOSO"};
StockQuote[] quotes = serviceProxy.StockQuoteRequest( symbols );
Hier noch der InputTrace.webinfo von WS:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsa:Action>http://stockservice.contoso.com/wse/samples/2003/06/StockQuoteRequest</wsa:Action>
<wsa:MessageID>uuid:349ad57d-ab8a-4c37-9e29-dbf19443fd26</wsa:MessageID>
<wsa:ReplyTo>
<wsa:Address>http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous</wsa:Address>
</wsa:ReplyTo>
<wsa:To>http://localhost/AsymEncryptCodeService/AsymEncryptService.asmx</wsa:To>
<wsse:Security soap:mustUnderstand="1">
<wsu:Timestamp wsu:Id="Timestamp-fbf59425-ff72-4060-9d88-fa324b492dcf">
<wsu:Created>2005-11-22T09:17:08Z</wsu:Created>
<wsu:Expires>2005-11-22T09:22:08Z</wsu:Expires>
</wsu:Timestamp>
<xenc:EncryptedKey xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference>
<wsse:KeyIdentifier ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">gBfo0147lM6cKnTbbMSuMVvmFY4=</wsse:KeyIdentifier>
</wsse:SecurityTokenReference>
</KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>EDyK0BwtvC9yV87UxDU4qD2xkzFzgANqMmS5tmav+DXcsx+u+vbSrrZTq+9Qgx204ZLER+sOoUcJI0WmbF1lrt+Scxbfdx+9J1BxOxR+gq3VVQC36yiZPKcdhrGu0j4lsIRejm5RyjDeghz/KXNQnzyUj0my9sxaLVGxGFmXBTM=</xenc:CipherValue>
</xenc:CipherData>
<xenc:ReferenceList>
<xenc: DataReference URI="#EncryptedContent-693b6744-b751-4254-9bc6-07e325f02620" />
</xenc:ReferenceList>
</xenc:EncryptedKey>
</wsse:Security>
</soap:Header>
<soap:Body>
<xenc:EncryptedData Id="EncryptedContent-693b6744-b751-4254-9bc6-07e325f02620" Type="http://www.w3.org/2001/04/xmlenc#Content" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc" />
<xenc:CipherData>
<xenc:CipherValue>0ynHqecmM5EO9EBsD9tBr1Q3lNhtvjTuwUoFCjT7XQ3IjKNG1z5iz1v+4yDyVmg9Dfvz7Fj3hOB9EW+A7aIhV6cmRceiH1e3rsn2DU/L3nh+WfAzlKbVHXgyhBe3+D3HTX8DFUFIF1ceaGHSReH+FJkLz1CAfwCTyMXunNdcQMT5FiAXFkQB1nOb/O+6Rwv/ykmrYMpB1XU2crVkOIvuHwh5V1UzSUHo5Dodst+mdvbgVtqGipIw+SNpzNctViiW</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</soap:Body>
</soap:Envelope>
Und OutputTrace.webinfo von WS:
<soap:Envelope xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<wsa:Action>http://schemas.xmlsoap.org/ws/2004/03/addressing/fault</wsa:Action>
<wsa:MessageID>uuid:8630b17b-f830-445d-9b54-a0b6c8d76f04</wsa:MessageID>
<wsa:RelatesTo>uuid:349ad57d-ab8a-4c37-9e29-dbf19443fd26</wsa:RelatesTo>
<wsa:To>http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous</wsa:To>
<wsse:Security>
<wsu:Timestamp wsu:Id="Timestamp-8d2e05a2-f228-4ab6-8091-42ba132e2619">
<wsu:Created>2005-11-22T09:17:11Z</wsu:Created>
<wsu:Expires>2005-11-22T09:22:11Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
<soap:Fault>
<faultcode xmlns:code="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">code:SecurityTokenUnavailable</faultcode>
<faultstring>Microsoft.Web.Services2.Security.SecurityFault: Referenced security token could not be retrieved
at Microsoft.Web.Services2.Security.EncryptedKey.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.EncryptedKey..ctor(XmlElement element)
at Microsoft.Web.Services2.Security.Security.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.SecurityInputFilter.ProcessMessage(SoapEnvelope envelope)
at Microsoft.Web.Services2.Pipeline.ProcessInputMessage(SoapEnvelope envelope)
at Microsoft.Web.Services2.WebServicesExtension.BeforeDeserializeServer(SoapServerMessage message)</faultstring>
<faultactor>http://localhost/AsymEncryptCodeService/AsymEncryptService.asmx</faultactor>
</soap:Fault>
</soap:Body>
</soap:Envelope>
Ich währe also echt froh, wenn sich jemand melden würde, der sich damit auskennt!
Hallo zusammen!
Hat schon jemand das neue Visual Studio 2005 und WSE 3.0 installiert?
Ich habe nähmlich das Problem, dass der "Settings WSE 3.0"-Tool nicht in Visual Stuio angezeigt wird(rechte Maustaste auf Projekt).
Die Anweisungen auf dieser Seite haben auch nicht geholfen: http://msdn.microsoft.com/webservices/webservices/building/wse/wse30readme.aspx
Kennt das Problem schon jemand?
Hallo!
Ich habe ein Problem mit dem Beispiel AsymmetricEncryption das bei der Installation von WSE 2.0 mitinstalliert wurde. Beim Ausführen des Beispiels kriege ich immer folgende Ausnahme:
Zusätzliche Informationen: Microsoft.Web.Services2.Security.SecurityFault: Referenced security token could not be retrieved
at Microsoft.Web.Services2.Security.EncryptedKey.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.EncryptedKey..ctor(XmlElement element)
at Microsoft.Web.Services2.Security.Security.LoadXml(XmlElement element)
at Microsoft.Web.Services2.Security.SecurityInputFilter.ProcessMessage(SoapEnvelope envelope)
at Microsoft.Web.Services2.Pipeline.ProcessInputMessage(SoapEnvelope envelope)
at Microsoft.Web.Services2.WebServicesExtension.BeforeDeserializeServer(SoapServerMessage message)
Die ertifikate wurden folgend installiert:
client private.cer in "Aktueller Benutzer/Eigene Zertifikate"
server public.cer in in "Aktueller Benutzer/Eigene Zertifikate"
server private.cer is in "Lokaler Computer/Eigene Zertifikate".
Uuups!
Verzeiht mir meine Unaufmerksamkeit, denn ich bin neu in diesen Thema.
Es gibt ein Haufen von Informationen dazu aber auch nur einen Haufen von Durcheinander!
Das heißt also am besten sichert man seine ASP.NET-Anwendung durch eine SSL-Verbindung was je nachdem was der Ceritizierungsserver erzeugt, einen X.509-Zertifikat verwendet. Richtig?
Ich glaube ihr hat mich falsch verstanden.
Ich habe nichts gegen SSL, nur ich suche nach eventuellen alternativen dazu. Weil ich iregendwie flüchtig gehört habe, dass man die Vertraulichkeit einer Nachricht in einer ASP.NET-Anwendung auch mit den X.509-Zertifikat ermöglicht werden kann, nur fand ich bis jetzt dazu auch nichts im Internet.
Hallo zusammen!
Ich habe eine Allgemeine Frage zu der Sicherheit für die ASP.NET-Anwendungen. Also, für die WebServices gibt es von Microsoft die WSE, mit der man den Zugriff auf diese auf verschiedenster Weise absichern kann(ich habe mich hier für X.509 entschieden).
Meine Frage ist, wie kann man den Datentransfer zwischen einem WebClient(WebBrowser) und dessen WebServer absichern/verschlüsseln(siehe Bild ?), aber Möglichst ohne den Einsatz von SSL?
Danke norman_timo!
Jetzt funzt, einen guten Artikel gibt es noch hier dazu: http://www.aspheute.com/artikel/20010627.htm.
Andere frage, weiß noch jemand ++wie sicher ++diese gespeichrte Werte dann für die Angreifer/Mithörer sind? Denn ich möchte auf diese Weise einen asynchronen Schlüsselaustausch machen, so dass am Ende die privaten Schlüssel für jede Sitzung zum verschlüsselten Datenaustausch so gespeichert und verwendet werden.
Also iregendwie funzt das nicht:
[WebMethod (Description="Speichert einen Wert in Globalen Variable", EnableSession=true)]
public void MemSave(int wert)
{
this.Session.Add("MemWert", wert);
}
[WebMethod (Description="Liest einen Wert aus der Globalen Variable", EnableSession=true)]
public int MemRead()
{
object wert = this.Session["MemWert"];
return (int)wert;
}
Wenn ich aber diese Methoden wie oben wieder Aufrufe kriege ich:
System.Web.Services.Protocols.SoapException
Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
Weil der Session-Attribut keine Werte mehr beinhaltet!?!? 🤔
PS: Ist nun der Session-Attribut Global für einen WebServices gültig oder jeweils für einen Client? Denn ich suche im allgemeinen eine Möglichkeit um Variablen zu speichern die Clientabhängig sind.
Hallo!
Man nehme an, es gibt einen WebService das Funktionalität eines Taschenrechners darstellt. Vor allem sind die Funktionen zum Zwischenspeichern der Werte Interessant. Diese sehen wie folgt aus:
int wert;
[WebMethod (Description="Speichert einen Wert in Globalen Variable")]
public void MemSave(int wert)
{
this.wert = wert;
}
[WebMethod (Description="Liest einen Wert aus der Globalen Variable")]
public int MemRead()
{
return this.wert;
}
Komischerweise gibt es dabei folgenden Verhalten: wenn man eine Instanz dieses WebServices anhand der gen. Proxy-Klasse erstellt und dann erst einen Wert speichert(MemSave(int wert)) und danach diesen wieder aufrufen(MemRead()) möchte, dann ist der Wert null.
localhost.Service1 proxy = new WSTaschenrechner.localhost.Service1();
proxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
proxy.MemSave(12);
int w = proxy.MemRead();//Rückgabewert ist null
So wie es aussieht wird beim Aufruf einer WebMethode immer eine neue Instanz der Klasse angelegt. Wie kann man also das Problem lösen, so dass man immer mit einer Instant der WebService-Klasse arbeitet(ohne statische Variablen)?
Hallo!
Ich versuche mich gerade mit dem Thema der Sicherheit von WebServices auseinander zu setzen, anhand von WSE(Dank schönen Beipiel von Denny: Suche Beispiel für WS-Security speziell UsernameToken class). Das Problem ist, kriege unregelmäßig folgende Fehlermeldung:
Durch das Einbauen, der folgenden Code, könnte man zwar das Problem lösen:
localhost.Service1 WSproxy = new localhost.Service1();
WSproxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
was aber nicht dem Sicherheitsgadanken von WSE entspricht.
Die Authentifizierungsmethoden auf IIS für die jeweiligen WebService lauten:
Ananonymer Zugriff -> erlaubt
Authentifizierter Zugriff -> Integrierte Windows-Authentifizierung
Das Problem ist dass auf einem Rechner diese Fehlermeldung sehr unregelmäßig erscheint. Nachdem ich den Rechner, paar mal neustarte geht es in der Regel wieder.
Auf einem anderen Rechner, krieg ich diese Fehlermeldung ständig zu sehen.
Hilfe!!!! X(
Ich sitze an diesen Problem schon seit Tagen!?!?!? X(
Woran kann es liegen?
Hallo!
Ich versuche mich zur Zeit mit der Sicherheit von WebServices anhand von WSE 2.0 auseinander zu setzen nur leider kriege ich bis jetzt kein Beispiel zum laufen, auch den den ich bei MSDN gefunden habe:
http://www.microsoft.com/germany/msdn/library/xmlwebservices/ErweiterteSicherheitInWebServicesAnwendungenMitDenWSEUndWSSecurity.mspx
Quellbeipiel: http://www.msdnonline.de/download/cccheck.zip
Eine nicht behandelte Ausnahme des Typs 'System.Net.WebException' ist in system.dll aufgetreten.
Dies passiert immer wenn ich eine WebMethode eines WebServices aufrufe. Also für mich sieht es nach iregndeinem Konfigurationsproblem aus, nur finde ich ich bis jetzt diesen nicht.
Als Authentifizierungmethoden sind auf IIS bei mir:
Anonymer Zugriff -> erlaubt
Authentifizierter Zugriff -> Windows-Authentifizierng
Aber dann stehen auch die Slash's im string und ich kriege die Fehlermeldung dass das URI-Format der URL ungültig ist!?!?!
Hallo!
Wie kann man in ein string "Gänsefüßchen" einbauen, ohne dass der Compiler meckert?
Beispiel:
string url = "<a href="https://myserver/basicWSE/Service1.asmx">https://myserver/basicWSE/Service1.asmx</a>"
Hallo zusammen!
Ich versuche gerade den VB.NET-Code in ein C#-Code zu überstzen. Dabei bin ich auf ein fogelde Code gestoßen den ich iregendwie nicht nach C# übesetzen kann:
Von VB.NET-Klasse:
_Public Class CompanyRow Inherits DataRow
Friend Sub New(ByVal rb As DataRowBuilder)
MyBase.New(rb)
End Sub
End Class_
Nach C#-Klasse:
public class CompanyRow : DataRow
{
internal CompanyRow(DataRowBuilder rb)
{ base.New(rb); }
}
Soweit sogut, sollte eigentlich Funktionieren. Tut's aber nicht!
In C# wird die Funktion base.New(rb) von DataRow nicht gefunden.
Wie Kann es sein?
Ich habe immer gedacht dass elle .NET-Sprachen gleiche BCL benutzen?
Original von herbivore
es fehlt das Application.Run
Ja, aber dann wird das Fenster als Modaler Dialog angezeigt. Ich möchte aber, dass der weiterer Code trotzem ausgeführt wird.
Um auch alles sauber zu beenden werde ich am Ende noch System.Windows.Forms.Application.Exit(); aufrufen.
Original von FZelle
Nach dem Ende der Main-Routine wird das Programm beendet.
Das ist mir schon klar!
Mit form.show() wird ein Thread für die Form gestartet der auch nebenbei läuft bis Main zu Ende ist, das Problem ist aber das es nur Fehlerhaft angezeigt wird.
Hallo!
Wieso wird eignetlich ein Fenster das volgend aufgerufen wird:
....
static void Main(string[] args)
{
Form1 co = new Form1();
co.Show();
Console.WriteLine("test");
Console.ReadLine();
}
....
nicht ordentlich angezeigt?
Wie kann man es machen, so dass das Fenster ordentlich angezeigt wird und die weitervolgende Verarbeitungen aber trotzdem statt finden?
Soll also heißen, dass von einem Dienst aus generell kiene Form direkt angelegt und gestartet werden kann?
PS: Ob ein Dienst mit einer anderen Anwendung kommuniezieren kann, ist erstmal uninteressant.
Hallo!
Wieso kann man eigentlich nicht aus einem Win-Dienst kein Fenster erzeugen?
...
protected override void OnStart(string[] args)
{
(new Form()).Show();
}
...
ausgenommen dass es eigentlich keinen Sinn macht! 😁
Hallo herbivore,
woran liegt denn das und wie kann man es letzendlich anstellen, das das Fenster unsichtbar geladen wird?
In diesen Zusammenhang wollte ich fragen wie man die Standart-Windows Tasten(Minimieren, Maximieren und Schließen) zweckentfremden kann? Also mit eigenen Funktionalitäten belegen kann.