private bool IsClientAuthorized(UseCircuitCodePacket useCircuitCode, out AuthenticateResponse sessionInfo)
        {
            UUID agentID     = useCircuitCode.CircuitCode.ID;
            UUID sessionID   = useCircuitCode.CircuitCode.SessionID;
            uint circuitCode = useCircuitCode.CircuitCode.Code;

            sessionInfo = m_circuitManager.AuthenticateSession(sessionID, agentID, circuitCode);
            return(sessionInfo.Authorised);
        }
Beispiel #2
0
        private bool IsClientAuthorized(UseCircuitCodePacket useCircuitCode, IPEndPoint remoteEndPoint, out AgentCircuitData sessionInfo)
        {
            UUID agentID     = useCircuitCode.CircuitCode.ID;
            UUID sessionID   = useCircuitCode.CircuitCode.SessionID;
            uint circuitCode = useCircuitCode.CircuitCode.Code;

            sessionInfo = m_circuitManager.AuthenticateSession(sessionID, agentID, circuitCode, remoteEndPoint);
            return(sessionInfo != null);
        }
Beispiel #3
0
        private void ConnectUseCircuitCode(Connection conn, uint code, string agentID,
                                           string sessionID)
        {
            AuthenticateResponse authResponse =
                m_CircuitManager.AuthenticateSession(new UUID(sessionID), new UUID(agentID), code);

            if (authResponse.Authorised)
            {
                m_Clients.Add(new Client(conn, this, m_Scene));
            }
        }
        public void ValidateLoginTest()
        {
            AgentCircuitManager agentCircuitManager = new AgentCircuitManager();

            agentCircuitManager.AddNewCircuit(circuitcode1, m_agentCircuitData1);
            agentCircuitManager.AddNewCircuit(circuitcode2, m_agentCircuitData2);

            // should be authorized
            AuthenticateResponse resp = agentCircuitManager.AuthenticateSession(SessionId1, AgentId1, circuitcode1);

            Assert.That(resp.Authorised);

            //should not be authorized
            resp = agentCircuitManager.AuthenticateSession(SessionId1, UUID.Random(), circuitcode1);
            Assert.That(!resp.Authorised);

            resp = agentCircuitManager.AuthenticateSession(UUID.Random(), AgentId1, circuitcode1);
            Assert.That(!resp.Authorised);

            resp = agentCircuitManager.AuthenticateSession(SessionId1, AgentId1, circuitcode2);
            Assert.That(!resp.Authorised);

            resp = agentCircuitManager.AuthenticateSession(SessionId2, AgentId1, circuitcode2);
            Assert.That(!resp.Authorised);

            agentCircuitManager.RemoveCircuit(circuitcode2);

            resp = agentCircuitManager.AuthenticateSession(SessionId2, AgentId2, circuitcode2);
            Assert.That(!resp.Authorised);
        }
Beispiel #5
0
        /// <summary>
        /// Check whether a given client is authorized to connect.
        /// </summary>
        /// <param name="useCircuit"></param>
        /// <param name="circuitManager"></param>
        /// <param name="sessionInfo"></param>
        /// <returns></returns>
        public virtual bool IsClientAuthorized(
            UseCircuitCodePacket useCircuit, AgentCircuitManager circuitManager, out AuthenticateResponse sessionInfo)
        {
            UUID agentId     = useCircuit.CircuitCode.ID;
            UUID sessionId   = useCircuit.CircuitCode.SessionID;
            uint circuitCode = useCircuit.CircuitCode.Code;

            sessionInfo = circuitManager.AuthenticateSession(sessionId, agentId, circuitCode);

            if (!sessionInfo.Authorised)
            {
                return(false);
            }

            return(true);
        }
        public void ValidateLoginTest()
        {
            AgentCircuitManager agentCircuitManager = new AgentCircuitManager();
            agentCircuitManager.AddNewCircuit(circuitcode1, m_agentCircuitData1);
            agentCircuitManager.AddNewCircuit(circuitcode2, m_agentCircuitData2);

            // should be authorized
            AuthenticateResponse resp = agentCircuitManager.AuthenticateSession(SessionId1, AgentId1, circuitcode1);
            Assert.That(resp.Authorised);


            //should not be authorized
            resp = agentCircuitManager.AuthenticateSession(SessionId1, UUID.Random(), circuitcode1);
            Assert.That(!resp.Authorised);

            resp = agentCircuitManager.AuthenticateSession(UUID.Random(), AgentId1, circuitcode1);
            Assert.That(!resp.Authorised);
            
            resp = agentCircuitManager.AuthenticateSession(SessionId1, AgentId1, circuitcode2);
            Assert.That(!resp.Authorised);

            resp = agentCircuitManager.AuthenticateSession(SessionId2, AgentId1, circuitcode2);
            Assert.That(!resp.Authorised);

            agentCircuitManager.RemoveCircuit(circuitcode2);

            resp = agentCircuitManager.AuthenticateSession(SessionId2, AgentId2, circuitcode2);
            Assert.That(!resp.Authorised);
        }