signon  8.40
mssf-access-control-manager.h
Go to the documentation of this file.
00001 /*
00002  * This file is part of signon
00003  *
00004  * Copyright (C) 2011 Intel Corporation.
00005  *
00006  * Contact: Elena Reshetova <elena.reshetova@intel.com>
00007  *
00008  * This library is free software; you can redistribute it and/or
00009  * modify it under the terms of the GNU Lesser General Public License
00010  * version 2.1 as published by the Free Software Foundation.
00011  *
00012  * This library is distributed in the hope that it will be useful, but
00013  * WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00015  * Lesser General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Lesser General Public
00018  * License along with this library; if not, write to the Free Software
00019  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00020  * 02110-1301 USA
00021  */
00028 #ifndef MSSF_ACCESS_CONTROL_MANAGER_H
00029 #define MSSF_ACCESS_CONTROL_MANAGER_H
00030 
00031 #include <QDBusMessage>
00032 #include <SignOn/AbstractAccessControlManager>
00033 
00039 class MSSFAccessControlManager: public SignOn::AbstractAccessControlManager
00040 {
00041     Q_OBJECT
00042 
00043 public:
00048     MSSFAccessControlManager(QObject *parent = 0);
00049 
00053     ~MSSFAccessControlManager();
00054 
00055     // reimplemented virtual methods
00056 
00066     bool isPeerAllowedToAccess(const QDBusMessage &peerMessage,
00067                                        const QString &securityContext);
00068 
00075     QString appIdOfPeer(const QDBusMessage &peerMessage);
00076 
00080     QString keychainWidgetAppId();
00081 };
00082 
00083 #endif // MSSF_ACCESS_CONTROL_MANAGER_H