Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
kubernetes-client__java_CVE-2020-8570_client-java-parent-9_0_2_fixed — Biblioteca cliente Java para a API do Kubernetes, permitindo o gerenciamento programático de clusters, pods, implantações e outros recursos com suporte para autenticação, watch, exec e operações de port-forward. | Kitploit
Ferramentas/GitHubGitHub/shoucheng3/kubernetes-client__java_cve-2020-8570_client-java-parent-9_0_2_fixed
Autenticação e AutorizaçãoSegurança de Infraestrutura em NuvemUtilitários de Propósito GeralSegurança de ContêineresSegurança na NuvemSegurança de API
GitHubshoucheng3/kubernetes-client__java_cve-2020-8570_client-java-parent-9_0_2_fixed

kubernetes-client__java_CVE-2020-8570_client-java-parent-9_0_2_fixed

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Biblioteca cliente Java para a API do Kubernetes, permitindo o gerenciamento programático de clusters, pods, implantações e outros recursos com suporte para autenticação, watch, exec e operações de port-forward.

Ver Repositório
há 9 mesesAinda não revisado

Cliente Java do Kubernetes

Build Status Client Capabilities Client Support Level

Cliente Java para a API do kubernetes.

Versionamento do cliente

O cliente Java usa Versionamento Semântico. Incrementamos o número da versão principal sempre que regeneramos o cliente para uma nova versão de lançamento do Kubernetes (veja a tabela abaixo). Sempre que fazemos isso, novas APIs são adicionadas e possivelmente mudanças que quebram a compatibilidade nos Stubs da API do Kubernetes gerados. Ao atualizar uma versão principal, esteja preparado para possíveis mudanças que quebrem a compatibilidade.

Instalação

Para instalar a biblioteca do cliente Java em seu repositório Maven local, simplesmente execute:

root@kitploit:~
git clone --recursive https://github.com/kubernetes-client/java
cd java
mvn install

Consulte a documentação oficial para mais informações.

Usuários Maven

Adicione esta dependência ao POM do seu projeto:

root@kitploit:~
<dependency>
    <groupId>io.kubernetes</groupId>
    <artifactId>client-java</artifactId>
    <version>8.0.2</version>
</dependency>

Usuários Gradle

root@kitploit:~
compile 'io.kubernetes:client-java:8.0.2'

Outros

Primeiro, gere o JAR executando:

root@kitploit:~
git clone --recursive https://github.com/kubernetes-client/java
cd java/kubernetes
mvn package

Em seguida, instale manualmente os seguintes JARs:

  • target/client-java-api-8.0.3-SNAPSHOT.jar
  • target/lib/*.jar

Exemplo

Preparamos alguns exemplos para casos de uso comuns, mostrados abaixo:

  • Configuração:
    • InClusterClientExample: Configure um cliente enquanto executa dentro do cluster Kubernetes.
    • KubeConfigFileClientExample: Configure um cliente para acessar um cluster Kubernetes a partir de fora.
  • Básico:
    • SimpleExample: Exemplo mínimo simples de como usar o cliente.
    • ProtoExample: Solicitar/receber payloads no protocolo de serialização protobuf.
    • (5.0.0+) PatchExample: Aplique patch em objetos de recurso em vários formatos de patch suportados, equivalente a kubectl patch.
    • FluentExample: Construa recursos arbitrários em um estilo fluente de construtor.
    • YamlExample: Forma sugerida de carregar ou despejar recursos em YAML.
  • Streaming:
    • WatchExample: Inscreva-se em eventos de watch de determinados recursos, equivalente a kubectl get <resource> -w.
    • LogsExample: Obtenha logs de contêineres em execução, equivalente a .

listar todos os pods:

root@kitploit:~
import io.kubernetes.client.openapi.ApiClient;
import io.kubernetes.client.openapi.ApiException;
import io.kubernetes.client.openapi.Configuration;
import io.kubernetes.client.openapi.apis.CoreV1Api;
import io.kubernetes.client.openapi.models.V1Pod;
import io.kubernetes.client.openapi.models.V1PodList;
import io.kubernetes.client.util.Config;

import java.io.IOException;

public class Example {
    public static void main(String[] args) throws IOException, ApiException{
        ApiClient client = Config.defaultClient();
        Configuration.setDefaultApiClient(client);

        CoreV1Api api = new CoreV1Api();
        V1PodList list = api.listPodForAllNamespaces(null, null, null, null, null, null, null, null, null);
        for (V1Pod item : list.getItems()) {
            System.out.println(item.getMetadata().getName());
        }
    }
}

assistir no objeto de namespace:

root@kitploit:~
import com.google.gson.reflect.TypeToken;
import io.kubernetes.client.openapi.ApiClient;
import io.kubernetes.client.openapi.ApiException;
import io.kubernetes.client.openapi.Configuration;
import io.kubernetes.client.openapi.apis.CoreV1Api;
import io.kubernetes.client.openapi.models.V1Namespace;
import io.kubernetes.client.util.Config;
import io.kubernetes.client.util.Watch;

import java.io.IOException;

public class WatchExample {
    public static void main(String[] args) throws IOException, ApiException{
        ApiClient client = Config.defaultClient();
        Configuration.setDefaultApiClient(client);

        CoreV1Api api = new CoreV1Api();

        Watch<V1Namespace> watch = Watch.createWatch(
                client,
                api.listNamespaceCall(null, null, null, null, null, 5, null, null, Boolean.TRUE, null, null),
                new TypeToken<Watch.Response<V1Namespace>>(){}.getType());

        for (Watch.Response<V1Namespace> item : watch) {
            System.out.printf("%s : %s%n", item.type, item.object.getMetadata().getName());
        }
    }
}

Mais exemplos podem ser encontrados na pasta examples. Para executar os exemplos, execute este comando:

root@kitploit:~
mvn exec:java -Dexec.mainClass="io.kubernetes.client.examples.Example"

Documentação

Toda a documentação das APIs e Modelos pode ser encontrada na documentação do cliente gerado

Compatibilidade

Legenda:

  • ✓ Exatamente os mesmos recursos / objetos de API tanto no java-client quanto na versão do Kubernetes.
  • + O java-client possui recursos ou objetos de API que podem não estar presentes no cluster Kubernetes, mas tudo o que eles têm em comum funcionará.
  • - O cluster Kubernetes possui recursos que a biblioteca java-client não pode usar (objetos de API adicionais, etc).

Consulte o CHANGELOG para uma descrição detalhada das mudanças entre as versões do java-client.

Contribuindo

Por favor, consulte CONTRIBUTING.md para instruções sobre como contribuir.

Código de Conduta

A participação na comunidade Kubernetes é regida pelo Código de Conduta da CNCF.

Desenvolvimento

Atualizar o código gerado.

O código é gerado pelo projeto openapi-generator.

Construímos ferramentas de propósito geral e multilinguagem para gerar código, hospedadas no repositório kubernetes-client/gen.

Para começar, em um diretório raiz que não seja o diretório do seu cliente java, por exemplo, seu layout de diretório poderia ser:

root@kitploit:~
${HOME}/
        src/
             gen/
             java/
...

Em seguida, para clonar o repositório gen, você executaria:

root@kitploit:~
cd ${HOME}/src
git clone https://github.com/kubernetes-client/gen
export GEN_ROOT=${PWD}

Em seguida, para atualizar o cliente:

root@kitploit:~
cd ${HOME}/src/java
${GEN_ROOT}/gen/openapi/java.sh kubernetes ./settings

Isso deve passar por um longo processo de build envolvendo docker e eventualmente resultar em um novo conjunto de código gerado no diretório kubernetes.

Baixar ferramenta
kubectl logs
  • ExecExample: Estabeleça uma sessão "exec" com contêineres em execução, equivalente a kubectl exec.
  • PortForwardExample: Mapeia uma porta local para uma porta no pod, equivalente a kubectl port-forward.
  • AttachExample: Anexe a um processo já em execução dentro de um contêiner existente, equivalente a kubectl attach.
  • CopyExample: Copie arquivos e diretórios para e de contêineres, equivalente a kubectl cp.
  • WebSocketsExample: Estabeleça uma sessão arbitrária de web-socket para determinados recursos.
  • Avançado: (NOTA: O exemplo a seguir requer o módulo client-java-extended)
    • (5.0.0+) InformerExample: Construa um informer que lista e assiste recursos e reflete as notificações em um cache local.
    • (5.0.0+) PagerExample: Suporte à Paginação (apenas para a solicitação de listagem) para aliviar a carga do lado do servidor/congestionamento de rede.
    • (6.0.0+) ControllerExample: Construa um controlador reconciliando o estado do mundo observando um ou vários recursos.
    • (6.0.0+) LeaderElectionExample: Utilitários de eleição de líder para ajudar a implementar controladores de alta disponibilidade (HA).
    • (9.0.0+) SpringIntegrationControllerExample: Construindo um controlador Kubernetes baseado na injeção de beans do framework Spring.
    • (9.0.0+) GenericKubernetesClientExample: Construa uma interface de cliente genérica para qualquer tipo Kubernetes, incluindo CRDs.
  • versão do cliente1.111.121.131.141.151.16
    3.0.0✓-----
    4.0.0+✓----
    5.0.0++✓---
    6.0.1+++✓--
    7.0.0++++✓✓
    8.0.2+++++✓