• view server state? i guess you are trying to select info about the connection from sys.dm_exec_connections

    stick with what i said, either sign the trigger or use EXECUTE AS OWNER

    there are ConnectionProperty functions that you can sue to get the same info that exists in the dmv's without access.
    here's decent example of an audit that works in a trigger:
    SELECT
      getdate()            AS EventDate,
      DB_NAME()            AS DBName,
      CURRENT_USER           AS CurrentUser,
      HOST_NAME()            AS HostName,
      APP_NAME()            AS ApplicationName,
      OBJECT_NAME(@@PROCID)        AS ProcedureName,
      USER_ID()            AS Userid,
      USER_NAME()            AS UserName,
      SUSER_ID()            AS sUserid,
      SUSER_SNAME()           AS sUserName,
      IS_SRVROLEMEMBER ('sysadmin')      AS [Is_ServerAdmin_Sysadmin],
      IS_MEMBER('db_owner')        AS [Is_DB_owner],
      IS_MEMBER('db_ddladmin')       AS [Is_DDL_Admin],
      IS_MEMBER('db_datareader')       AS [Is_DB_Datareader],
      ORIGINAL_LOGIN()          AS [ORIGINAL_LOGIN],
      ConnectionProperty('net_transport')    AS 'net_transport',
      ConnectionProperty('protocol_type')    AS 'protocol_type',
      ConnectionProperty('auth_scheme')    AS 'auth_scheme',
      ConnectionProperty('local_net_address')  AS 'local_net_address',
      ConnectionProperty('local_tcp_port')   AS 'local_tcp_port',
      ConnectionProperty('client_net_address')  AS 'client_net_address',
      ConnectionProperty('physical_net_transport') AS 'physical_net_transport'

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!