Oracle Coherence for C++ API
Release 3.6.1.0

E18813-01

coherence/security/IdentityAsserter.hpp

00001 /*
00002 * IdentityAsserter.hpp
00003 *
00004 * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
00005 *
00006 * Oracle is a registered trademarks of Oracle Corporation and/or its
00007 * affiliates.
00008 *
00009 * This software is the confidential and proprietary information of Oracle
00010 * Corporation. You shall not disclose such confidential and proprietary
00011 * information and shall use it only in accordance with the terms of the
00012 * license agreement you entered into with Oracle.
00013 *
00014 * This notice may not be removed or altered.
00015 */
00016 #ifndef COH_IDENTITY_ASSERTER_HPP
00017 #define COH_IDENTITY_ASSERTER_HPP
00018 
00019 #include "coherence/lang.ns"
00020 
00021 #include "coherence/security/auth/Subject.hpp"
00022 
00023 COH_OPEN_NAMESPACE2(coherence,security)
00024 
00025 
00026 /**
00027 * IdentityAsserter validates a token in order to establish a user's identity.
00028 * The token is an identity assertion, a statement that asserts an identity.
00029 * <p>
00030 * A token is opaque to Coherence. It could be a standard type such as a SAML
00031 * Assertion or a proprietary type.
00032 *
00033 * @author dag 2009.10.30
00034 *
00035 * @since Coherence 3.6
00036 */
00037 class COH_EXPORT IdentityAsserter
00038     : public interface_spec<IdentityAsserter>
00039     {
00040     // ----- IdentityAsserter interface -------------------------------------
00041 
00042     public:
00043         /**
00044         * Asserts an identity based on a token-based identity assertion.
00045         *
00046         * @param oToken  the token that asserts identity.
00047         *
00048         * @return a Subject representing the identity.
00049         *
00050         * @throws SecurityException if the identity assertion fails.
00051         */
00052         virtual Subject::View assertIdentity(Object::View vToken) const = 0;
00053     };
00054 
00055 COH_CLOSE_NAMESPACE2
00056 
00057 #endif // COH_IDENTITY_ASSERTER_HPP
Copyright © 2000, 2010, Oracle and/or its affiliates. All rights reserved.