| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef __com_sun_star_auth_XSSOPasswordCache_idl__ |
| #define __com_sun_star_auth_XSSOPasswordCache_idl__ |
| |
| #ifndef __com_sun_star_uno_XInterface_idl__ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| |
| #ifndef __com_sun_star_auth_SSOExceptions_idl__ |
| #include <com/sun/star/auth/SSOExceptions.idl> |
| #endif |
| |
| module com { module sun { module star { module auth { |
| |
| /** supports password caching for security mechanisms which use passwords as |
| credentials or as an input to credential creation but don't have |
| an external method to cache these passwords. |
| |
| @since OpenOffice 1.1.2 |
| */ |
| |
| published interface XSSOPasswordCache : ::com::sun::star::uno::XInterface |
| { |
| /** adds a username/password combination to the cache. |
| <P> |
| If an entry for the specified username already exists in the cache, it |
| will be overwritten. |
| |
| @param UserName |
| the user name to add |
| |
| @param Password |
| the associated password |
| |
| @param Persist |
| indicates whether or not the username/password combination should be |
| persisted |
| */ |
| void addPassword( [in] string UserName, |
| [in] string Password, |
| [in] boolean Persist ) |
| raises( InvalidArgumentException, |
| PersistenceFailureException ); |
| |
| /** retrieves a password for a given user from the cache. |
| <P> |
| Non persistent cache is searched first, followed by the |
| persistent cache ( if it exists ). |
| |
| @param UserName |
| the name of the user whose password should be retrieved |
| |
| @param Persist |
| indicates whether or not the password is persistent |
| |
| @returns |
| the required password |
| */ |
| string getPassword( [in] string UserName, [out] boolean Persist ) |
| raises( InvalidArgumentException, |
| PersistenceFailureException ); |
| |
| /** removes a password from the cache |
| |
| @param UserName |
| the name of the user whose password should be removed. |
| |
| @param RemovePersist |
| indicates whether or not the password should also be removed, if |
| present, from persistent cache. |
| */ |
| void removePassword( [in] string UserName, [in] boolean RemovePersist ) |
| raises( InvalidArgumentException, |
| PersistenceFailureException ); |
| }; |
| |
| }; }; }; }; |
| |
| #endif |