From 328fd104e183d6c08148d9752ad7f61608244f5d Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 3 Sep 2009 21:03:04 +0100 Subject: Remove the distinction between password and login key in the authentication service. This will be done in the login service instead, it's out of scope for an authenticator --- .../AuthenticationService/AuthenticationService.cs | 86 ---------------------- .../PasswordAuthenticationService.cs | 76 +++++++++++++++++++ .../WebkeyAuthenticationService.cs | 76 +++++++++++++++++++ .../Services/Interfaces/IAuthenticationService.cs | 7 +- 4 files changed, 154 insertions(+), 91 deletions(-) delete mode 100644 OpenSim/Services/AuthenticationService/AuthenticationService.cs create mode 100644 OpenSim/Services/AuthenticationService/PasswordAuthenticationService.cs create mode 100644 OpenSim/Services/AuthenticationService/WebkeyAuthenticationService.cs (limited to 'OpenSim') diff --git a/OpenSim/Services/AuthenticationService/AuthenticationService.cs b/OpenSim/Services/AuthenticationService/AuthenticationService.cs deleted file mode 100644 index 803d90c..0000000 --- a/OpenSim/Services/AuthenticationService/AuthenticationService.cs +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) Contributors, http://opensimulator.org/ - * See CONTRIBUTORS.TXT for a full list of copyright holders. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the OpenSimulator Project nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -using System; -using OpenMetaverse; - -namespace OpenSim.Services.AuthenticationService -{ - // Generic Authentication service used for identifying - // and authenticating principals. - // Principals may be clients acting on users' behalf, - // or any other components that need - // verifiable identification. - // - public class AuthenticationService - { - public byte[] GetPublicKey() - { - return new byte[0]; - } - - public string AuthenticatePassword(UUID principalID, string password) - { - return String.Empty; - } - - public byte[] AuthenticatePasswordEncrypted(byte[] cyphertext, byte[] key) - { - return new byte[0]; - } - - public string AuthenticateWebkey(UUID principalID, string webkey) - { - return String.Empty; - } - - public byte[] AuthenticateWebkeyEncrypted(byte[] cyphertext, byte[] key) - { - return new byte[0]; - } - - public bool Verify(UUID principalID, string token) - { - return false; - } - - public bool VerifyEncrypted(byte[] cyphertext, byte[] key) - { - return false; - } - - public bool Release(UUID principalID, string token) - { - return false; - } - - public bool ReleaseEncrypted(byte[] cyphertext, byte[] key) - { - return false; - } - } -} diff --git a/OpenSim/Services/AuthenticationService/PasswordAuthenticationService.cs b/OpenSim/Services/AuthenticationService/PasswordAuthenticationService.cs new file mode 100644 index 0000000..d20edb3 --- /dev/null +++ b/OpenSim/Services/AuthenticationService/PasswordAuthenticationService.cs @@ -0,0 +1,76 @@ +/* + * Copyright (c) Contributors, http://opensimulator.org/ + * See CONTRIBUTORS.TXT for a full list of copyright holders. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the OpenSimulator Project nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +using System; +using OpenMetaverse; + +namespace OpenSim.Services.AuthenticationService +{ + // Generic Authentication service used for identifying + // and authenticating principals. + // Principals may be clients acting on users' behalf, + // or any other components that need + // verifiable identification. + // + public class PasswordAuthenticationService + { + public byte[] GetPublicKey() + { + return new byte[0]; + } + + public string Authenticate(UUID principalID, string password) + { + return String.Empty; + } + + public byte[] AuthenticateEncrypted(byte[] cyphertext, byte[] key) + { + return new byte[0]; + } + + public bool Verify(UUID principalID, string token) + { + return false; + } + + public bool VerifyEncrypted(byte[] cyphertext, byte[] key) + { + return false; + } + + public bool Release(UUID principalID, string token) + { + return false; + } + + public bool ReleaseEncrypted(byte[] cyphertext, byte[] key) + { + return false; + } + } +} diff --git a/OpenSim/Services/AuthenticationService/WebkeyAuthenticationService.cs b/OpenSim/Services/AuthenticationService/WebkeyAuthenticationService.cs new file mode 100644 index 0000000..478d259 --- /dev/null +++ b/OpenSim/Services/AuthenticationService/WebkeyAuthenticationService.cs @@ -0,0 +1,76 @@ +/* + * Copyright (c) Contributors, http://opensimulator.org/ + * See CONTRIBUTORS.TXT for a full list of copyright holders. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the OpenSimulator Project nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +using System; +using OpenMetaverse; + +namespace OpenSim.Services.AuthenticationService +{ + // Generic Authentication service used for identifying + // and authenticating principals. + // Principals may be clients acting on users' behalf, + // or any other components that need + // verifiable identification. + // + public class WebkeyAuthenticationService + { + public byte[] GetPublicKey() + { + return new byte[0]; + } + + public string Authenticate(UUID principalID, string password) + { + return String.Empty; + } + + public byte[] AuthenticateEncrypted(byte[] cyphertext, byte[] key) + { + return new byte[0]; + } + + public bool Verify(UUID principalID, string token) + { + return false; + } + + public bool VerifyEncrypted(byte[] cyphertext, byte[] key) + { + return false; + } + + public bool Release(UUID principalID, string token) + { + return false; + } + + public bool ReleaseEncrypted(byte[] cyphertext, byte[] key) + { + return false; + } + } +} diff --git a/OpenSim/Services/Interfaces/IAuthenticationService.cs b/OpenSim/Services/Interfaces/IAuthenticationService.cs index d473cf8..f042c93 100644 --- a/OpenSim/Services/Interfaces/IAuthenticationService.cs +++ b/OpenSim/Services/Interfaces/IAuthenticationService.cs @@ -70,11 +70,8 @@ namespace OpenSim.Services.Interfaces // the public key of the peer, which the connector must have // obtained using a remote GetPublicKey call. // - string AuthenticatePassword(UUID principalID, string password); - byte[] AuthenticatePasswordEncrypted(byte[] cyphertext, byte[] key); - - string AuthenticateWebkey(UUID principalID, string webkey); - byte[] AuthenticateWebkeyEncrypted(byte[] cyphertext, byte[] key); + string Authenticate(UUID principalID, string password); + byte[] AuthenticateEncrypted(byte[] cyphertext, byte[] key); ////////////////////////////////////////////////////// // Verification -- cgit v1.1