Tabnine Logo
com.oberasoftware.jasdb.api.security
Code IndexAdd Tabnine to your IDE (free)

How to use com.oberasoftware.jasdb.api.security

Best Java code snippets using com.oberasoftware.jasdb.api.security (Showing top 20 results out of 315)

origin: oberasoftware/jasdb

@Override
public User authenticate(Credentials credentials) throws JasDBStorageException {
  return credentialsProvider.getUser(credentials.getUsername(), credentials.getSourceHost(), credentials.getPassword());
}
origin: oberasoftware/jasdb

@Override
public List<String> getUsers() throws JasDBStorageException {
  return userManager.getUsers(session);
}
origin: oberasoftware/jasdb

  public static AccessMode fromMode(String mode) {
    for(AccessMode accessMode : values()) {
      if(accessMode.getMode().equals(mode)) {
        return accessMode;
      }
    }
    return NONE;
  }
}
origin: oberasoftware/jasdb

public SecureUserSession(UserSession userSession) {
  this.sessionId = userSession.getSessionId();
  this.user = userSession.getUser();
  this.encryptedContentKey = userSession.getEncryptedContentKey();
  try {
    CryptoEngine cryptoEngine = CryptoFactory.getEngine();
    accessTokenHash = cryptoEngine.hash(sessionId, userSession.getAccessToken());
  } catch(JasDBSecurityException e) {
    throw new RuntimeJasDBException("Unable to hash token", e);
  }
}
origin: oberasoftware/jasdb

@Override
public User addUser(UserSession currentSession, String userName, String allowedHost, String password) throws JasDBStorageException {
  authorize(currentSession, "/Users", AccessMode.WRITE);
  User currentUser = currentSession.getUser();
  CryptoEngine cryptoEngine = CryptoFactory.getEngine();
  String contentKey = cryptoEngine.decrypt(currentUser.getPasswordSalt(), currentSession.getAccessToken(), currentSession.getEncryptedContentKey());
  return credentialsProvider.addUser(userName, allowedHost, contentKey, password);
}
origin: oberasoftware/jasdb

private EncryptedGrants encryptGrants(GrantObject grantObject, UserSession userSession) throws JasDBStorageException {
  CryptoEngine cryptoEngine = CryptoFactory.getEngine();
  String contentKey = CryptoFactory.getEngine().decrypt(userSession.getUser().getPasswordSalt(), userSession.getAccessToken(), userSession.getEncryptedContentKey());
  String salt = cryptoEngine.generateSalt();
  String unencryptedData = SimpleEntity.toJson(GrantObjectMeta.toEntity(grantObject));
  String encryptedData = cryptoEngine.encrypt(salt, contentKey, unencryptedData);
  return new EncryptedGrants(grantObject.getObjectName(), encryptedData, salt, cryptoEngine.getDescriptor());
}
origin: oberasoftware/jasdb

@Override
public UserSession startSession(Credentials credentials) throws JasDBStorageException {
  User user = userManager.authenticate(credentials);
  String sessionId = UUID.randomUUID().toString();
  String token = UUID.randomUUID().toString();
  CryptoEngine userEncryptionEngine = CryptoFactory.getEngine(user.getEncryptionEngine());
  String encryptedContentKey = user.getEncryptedContentKey();
  String contentKey = userEncryptionEngine.decrypt(user.getPasswordSalt(), credentials.getPassword(), encryptedContentKey);
  encryptedContentKey = userEncryptionEngine.encrypt(user.getPasswordSalt(), token, contentKey);
  UserSession session = new UserSessionImpl(sessionId, token, encryptedContentKey, user);
  userManager.authorize(session, "/", AccessMode.CONNECT);
  secureUserSessionMap.put(sessionId, new SecureUserSession(session));
  return session;
}
origin: oberasoftware/jasdb

  private void validateSession() throws JasDBStorageException {
    if(session == null || !sessionManager.sessionValid(session.getSessionId())) {
      throw new JasDBSecurityException("Unable to change security principals, not logged in or session expired");
    }
  }
}
origin: oberasoftware/jasdb

/**
 * Creates a local DB session with credentials
 * @param credentials The credentials
 * @throws JasDBStorageException If unable to request the session
 */
public LocalDBSession(Credentials credentials) throws JasDBException {
  this();
  SessionManager sessionManager = ApplicationContextProvider.getApplicationContext().getBean(SessionManager.class);
  userSession = sessionManager.startSession(credentials);
}
origin: oberasoftware/jasdb

@Override
public void addUser(String username, String allowedHost, String password) throws JasDBStorageException {
  validateSession();
  userManager.addUser(session, username, allowedHost, password);
}
origin: oberasoftware/jasdb

@Override
public void deleteUser(String username) throws JasDBStorageException {
  validateSession();
  userManager.deleteUser(session, username);
}
origin: oberasoftware/jasdb

@Override
public void grant(String username, String object, AccessMode mode) throws JasDBStorageException {
  validateSession();
  userManager.grantUser(session, object, username, mode);
}
origin: oberasoftware/jasdb

@Override
public void revoke(String username, String object) throws JasDBStorageException {
  validateSession();
  userManager.revoke(session, object, username);
}
origin: oberasoftware/jasdb

@Override
public void deleteUser(UserSession session, String userName) throws JasDBStorageException {
  authorize(session, "/Users", AccessMode.WRITE);
  credentialsProvider.deleteUser(userName);
}
origin: oberasoftware/jasdb

@Override
public List<String> getUsers(UserSession currentSession) throws JasDBStorageException {
  authorize(currentSession, "/Users", AccessMode.READ);
  return credentialsProvider.getUsers();
}
origin: oberasoftware/jasdb

@Override
public boolean isGranted(String userName, AccessMode mode) {
  Grant grant = getGrant(userName);
  if(grant != null) {
    //check the the grants for the user has a higher rank than the desired access rank
    return grant.getAccessMode().getRank() >= mode.getRank();
  } else {
    return false;
  }
}
origin: oberasoftware/jasdb

private RestEntity loadSpecificGrantObject(RequestContext context, String object) throws RestException {
  try {
    GrantObject grantObject = userManager.getGrantObject(context.getUserSession(), object);
    return GrantModelMapper.map(grantObject);
  } catch(JasDBStorageException e) {
    throw new RestException("Unable to load grant objects", e);
  }
}
origin: oberasoftware/jasdb

private GrantObject decrypt(UserSession session, EncryptedGrants encryptedGrants) throws JasDBStorageException {
  CryptoEngine contentCryptoEngine = CryptoFactory.getEngine();
  String contentKey = contentCryptoEngine.decrypt(session.getUser().getPasswordSalt(), session.getAccessToken(), session.getEncryptedContentKey());
  CryptoEngine cryptoEngine = CryptoFactory.getEngine(encryptedGrants.getEncryptionEngine());
  String decryptedData = cryptoEngine.decrypt(encryptedGrants.getSalt(), contentKey, encryptedGrants.getEncryptedData());
  return GrantObjectMeta.fromEntity(SimpleEntity.fromJson(decryptedData));
}
origin: oberasoftware/jasdb

private RestEntity loadUserList(RequestContext context) throws RestException {
  try {
    List<String> userList = userManager.getUsers(context.getUserSession());
    return new RestUserList(userList);
  } catch(JasDBStorageException e) {
    throw new RestException("Unable to load user list", e);
  }
}
origin: oberasoftware/jasdb

/**
 * Creates a local DB session bound to a specific instance with given credentials
 * @param instanceId The instance
 * @param credentials The credentials
 * @throws JasDBStorageException If unable to request the session
 */
public LocalDBSession(String instanceId, Credentials credentials) throws JasDBException {
  this(instanceId);
  SessionManager sessionManager = ApplicationContextProvider.getApplicationContext().getBean(SessionManager.class);
  userSession = sessionManager.startSession(credentials);
}
com.oberasoftware.jasdb.api.security

Most used classes

  • UserSession
  • UserManager
  • AccessMode
  • Credentials
    User: renarj Date: 1/22/12 Time: 3:24 PM
  • CryptoEngine
  • CredentialsProvider
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now