@Override public void deleteProjectMemberEntries(Account account) { if (!ProjectConstants.TYPE.equalsIgnoreCase(account.getKind()) && StringUtils.isNotBlank(account.getExternalId()) && StringUtils.isNotBlank(account.getExternalIdType())){ create().delete(PROJECT_MEMBER) .where(PROJECT_MEMBER.EXTERNAL_ID.eq(account.getExternalId()) .and(PROJECT_MEMBER.EXTERNAL_ID_TYPE.eq(account.getExternalIdType()))) .execute(); } create().delete(PROJECT_MEMBER) .where(PROJECT_MEMBER.PROJECT_ID.eq(account.getId())) .execute(); }
@Override public Resource filter(ApiRequest request, Object original, Resource converted) { IdFormatter idFormatter = ApiContext.getContext().getIdFormatter(); Identity identity = null; if (original instanceof Account) { Account account = (Account) original; if (AccountConstants.PROJECT_KIND.equalsIgnoreCase(account.getKind())) { return converted; } if (account.getExternalId() != null && account.getExternalIdType() != null) { identity = new Identity(account.getExternalIdType(), account.getExternalId()); } else { if (!AccountConstants.PROJECT_KIND.equalsIgnoreCase(account.getKind())) { identity = new Identity(ProjectConstants.RANCHER_ID, String.valueOf(account.getId())); } } } if (identity != null) { if (idFormatter != null) { converted.getFields().put("identity", idFormatter.formatId("identity", identity.getId())); } else { converted.getFields().put("identity", identity.getId()); } } return converted; }
Set<Identity> identities = new HashSet<>(); if (StringUtils.equals(account.getExternalIdType(), ServiceAuthConstants.USER_TYPE.get())) { identities.add(new Identity(account.getExternalIdType(), account.getExternalId(), null, null, null, null, true));
@Override public Set<Identity> getIdentities(Account account) { if (!isConfigured() || !getConstantsConfig().getUserScope().equalsIgnoreCase(account.getExternalIdType())) { return new HashSet<>(); } if(!getTokenUtils().findAndSetJWT() && SecurityConstants.SECURITY.get() && getConstantsConfig().getConfig().equalsIgnoreCase(SecurityConstants.AUTH_PROVIDER.get())) { AuthToken authToken = authTokenDao.getTokenByAccountId(account.getId()); if (authToken == null){ LdapName dn; try { dn = new LdapName(account.getExternalId()); } catch (NamingException e) { throw new ClientVisibleException(ResponseCodes.UNAUTHORIZED); } Set<Identity> identities = getIdentities(dn); Token token = getTokenUtils().createToken(identities, null); authToken = authTokenDao.createToken(token.getJwt(), getConstantsConfig().getConfig(), account.getId(), account.getId()); } if (authToken != null && authToken.getKey() != null) { ApiRequest request = ApiContext.getContext().getApiRequest(); request.setAttribute(getConstantsConfig().getJWTType(), authToken.getKey()); } } return getTokenUtils().getIdentities(); }
/** * {@inheritDoc} */ @Override public void from(io.cattle.platform.core.model.Account from) { setId(from.getId()); setName(from.getName()); setKind(from.getKind()); setUuid(from.getUuid()); setDescription(from.getDescription()); setState(from.getState()); setCreated(from.getCreated()); setRemoved(from.getRemoved()); setRemoveTime(from.getRemoveTime()); setData(from.getData()); setExternalId(from.getExternalId()); setExternalIdType(from.getExternalIdType()); setHealthState(from.getHealthState()); setProjectTemplateId(from.getProjectTemplateId()); setDefaultNetworkId(from.getDefaultNetworkId()); setVersion(from.getVersion()); setRevision(from.getRevision()); }