globus toolkit 4 prof. dr. cláudio f. r. geyer instituto de informática – ufrgs
TRANSCRIPT
Globus Toolkit 4
Prof. Dr. Cláudio F. R. GeyerInstituto de Informática – UFRGS
GT 4.0 - Segurança 2
Autoria
Autores L. Cavalheiro, R. Real et al.
Curso Dell, 2003 C. Geyer
revisão 2005 Eder Fontoura (versão para GT4)
2006 Colaboração
Diego Gomes Local: II/UFRGS
GT 4.0 - Segurança 3
Súmula Geral
Introdução GSI – Segurança MDS – Sistema de informação
Obs.: Slides separados GRAM – Gerência de execução
Obs.: Slides separados
Globus Toolkit 4 4
GT 4 - Introdução
Principais projetistas: Ian Foster e Carl Kesselman Um dos mais usados e referenciados
Confunde-se com Grid (arquitetura) O Globus Toolkit é
uma coleção de componentes que procuram solucionar os problemas que frequentemente acompanham a construção
de aplicações distribuídas colaborativas heterogeneidade
foca na simplificação da heterogeneidade para desenvolvedores de aplicações
GT 4.0 - Segurança 5
GT 4 - Introdução
Objetivos Permitir compartilhamento de
Poder computacional Bases de dados E outras ferramentas
Passando por limites de instituições e geográficos
Sem sacrificar a autonomia local
GT 4.0 - Segurança 6
GT 4 - Introdução
Histórico GT v1.0: 1998 GT v2.0: 2002 GT v3.0: pouco sucesso GT v4.0: 2005 (?0
GT 4.0 - Segurança 7
GT 4 - Introdução
Distinções New York Times: padrão de fato em sw para
grade 2002
Mais promissora tecnologia entre 100 Pela R&D Magazine
2003 Foster, Kesselman e Tuecke nomeados
entre os 10 inovadores do ano pela InfoWorld magazine
GT 4.0 - Segurança 8
GT 4 - Introdução
Distinções (cont.) 2003
Globus: uma das 10 tecnologias que devem mudar o mundo
Pelo MIT Technologu Review 2003
Globus recebe o prêmio “2003 Federal Laboratory Consortium”
Pelos excelentes resultados em transferência de tecnologia
Devido adoção por inúmeras instituições em todo o mundo
GT 4.0 - Segurança 9
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Gerência da carga computacional em
empresas SAP AG + GT 4 SAP AG dinamicamente ajusta o número
de processos de trabalho conforme demanda
Usa GT 4 para descobrir e e reservar recursos necessários
aos processos de trabalho Executar, monitorar e remover processos de
trabalho sobre os recursos
GT 4.0 - Segurança 10
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Captura de dados com alto desempenho
Empresa precisa receber dados entre 5 a 10 Gigabits por segundo
Após captura, deve realizar processamento inicial com extração
de metadados Armazenar de forma confiável Disponibilizar os dados a clientes com altas
taxas (10 a 40 Gigabits por segundo) Oferecer plataforma para execução de
análises (convencionais, mineração, ...)
GT 4.0 - Segurança 11
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Captura de dados com alto desempenho
Plataforma criada faz uso pesado de componentes do GT 4
GridFTP para captura de dados transferências até os clusters de armazenamento e
distribuição transferência entre clusters e sistemas secundários transferência para clientes
Gerência de execução para os jobs Permite uso de componentes de hw de
prateleira
GT 4.0 - Segurança 12
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Simulação (de Engenharia) de Terremotos
NEES (EUA) agrupa engenheiros “de terremotos” distribuídos em o país
Cada ponto da rede possui repositórios de dados, computadores de alto desempenho para simulações numéricas e dispositivos para experimentos (tanques, ...)
Uso do GT 4 permite Acesso remoto seguro a todos os recursos Engenheiros podem projetar, executar,
monitorar e analisar experimentos remotamente
GT 4.0 - Segurança 13
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Earth System Grid (EUA)
Instalação de diversos serviços em vários laboratórios dos EUA
Acesso remoto a (muitas) dezenas de terabytes de dados de simulação climática
Portal web para requisições Leitura, clusterização (de dados) e transferência
de enormes quantidades de dados GT 4 usado para autenticação, autorização,
acesso a dados, transferência de dados e monitoramento do sistema
GT 4.0 - Segurança 14
GT 4 – Introdução
Exemplos de usos/aplicações (motivação) Open Science Grid (EUA)
Multi-organizações virtuais Laboratório em grade para aplicações diversas 30 sites, 3000 processadores Cargas de 10 distintas aplicações em 1300 jobs
simultâneos Transferências de dados diárias de 2 Terabytes GT 4 usado para gerência de organizações
virtuais, acesso a recursos, transferência de dados, autenticação, ...
GT 4.0 - Segurança 15
Exemplos de usos/aplicações (motivação) Open Science Grid (EUA)
Aplicações exemplos Experimentos de física do Large Hadron Collider do
Cern (Genebra) Sloan Digital Sky Survey Project Experimentos de busca de ondas gravitacionais
(LIGO) Experimentos BTeV no Fermilab (entre os maiores
laboratórios de física dos EUA) Análise da estrutura molecular Análise de genoma Experimentos de projetos de CC (escalonamento, ...)
Globus Toolkit 4 16
GT 4 - Introdução
O que têm no Globus Toolkit: Ambiente de desenvolvimento Grid
Desenvolvimento de Web Services OGSA-compliant
Desenvolvimento de aplicações Conjunto de serviços Grid Ferramentas e exemplos
Empacotados de forma a serem usados independentemente ou em conjunto
GT 4.0 - Segurança 17
GT 4 - Introdução
Principais Componentes: Core Runtime;
Infra-estrutura para construção de novos serviços;
Segurança; Aplicação uniforme de políticas através
de domínios distintos;
GT 4.0 - Segurança 18
GT 4 - Introdução
Principais Componentes: Serviços de Informação;
Descoberta e monitoramento de serviços dinâmicos;
Gerência de Dados; Descoberta, transferência e acesso a
dados; Gerência de execução;
Provisão de recursos, execução de jobs e gerência de serviços;
GT 4.0 - Segurança 19
GT 4 - Introdução
Protocolos Web Service: WSDL, SOAP; WS Addressing, WSRF, WSN; WS Security, SAML, XACML; WS-Interoperability profile
Demais Protocolos: GridFTP (baseado em padrões); Customizados;
Globus Toolkit 4 20
GT 4 - Introdução
Segurança Proporciona mecanismos de segurança
que operam em diversos níveis permitindo o compartilhamento seguro de
recursos Standards
Inclui e objetiva o uso de padrões existentes (IETF, W3C, OASIS, OGF)
SSL/TLS; X.509 Proxy Certificates; WSRF e WS-N;
Globus Toolkit 4 21
GT 4 - Introdução
GT 4.0 - Segurança 22
GT 4 - Introdução
GT 4.0 - Segurança 23
GT 4 - Introdução
novonovo
novonovo
WS
Globus Toolkit 4 24
novonovo
Globus Toolkit 4 25
GT 4 - Introdução
Globus Toolkit 4 26
GT 4 - Introdução
• Projetos com participantes da aliança Globus
GT 4.0 - Segurança 27
Versões
Última versão GT 4.0.5
Acesso em 03/10/2007 Release notes
http://www.globus.org/toolkit/releasenotes/4.0.5/
Principais modificações Correção de bugs Melhorias nos módulos
MDS: Monitoring and Discovery System GRAM: Execution management tools
GT 4.0 - Segurança 28
Bibliografia
A Globus® Primer: What is the Grid and How Do I Use It? www.globus.org/toolkit/docs/4.0/key/
GT4_Primer_0.6.pdf Home Globus. http://www.globus.org/toolkit/ http://www-unix.globus.org/toolkit/tutorials/BA
S/APAC/APACGlobusIntro.pdf.
http://www.globus.org/toolkit/docs/4.0/
GT 4 - Segurança
Prof. Dr. Cláudio F. R. GeyerInstituto de Informática – UFRGS
GT 4.0 - Segurança 30
GT 4 - Introdução
Grid Security Infrastructure; Utiliza criptografia de chave pública;
Segurança para: Estabelecimento de identidade de usuários e
serviços (autenticação); Proteção das comunicações; Determinar quais ações podem ser executadas por
quem (autorização); Delegação;
GT 4.0 - Segurança 31
GT 4 – Autenticação
Uso de certificados (X.509 end entity certificates); identificam entidades persistentes como usuários e
serviços; Proporciona para cada entidade um identificador
único; Proporciona método para garantir a identificação de
um usuário ou serviço (através dos princípios de criptografia de chave pública empregados pelo certificado);
Os certificados possuem prazo de validade;
GT 4.0 - Segurança 32
GT 4 – Proteção das Comunicações
Os Web Services do GT4 usam SOAP como protocolo para comunicação;
A proteção das mensagens pode ser realizada por: TLS (Transport-Level Security) – transportar as
mensagens através de uma conexão protegida; TLS proporciona integridade e privacidade; Normalmente utilizada em conjunto com certificados
X.509; WS-Security e WS-SecureConversation –
assinatura e/ou criptografia de porções das mensagens, conhecido como Message-Level Security;
GT 4.0 - Segurança 33
D D
D D
d
GT 4.0 - Segurança 34
GT 4 – Autorização
Grid-mapfile – arquivo que lista identificado-res de usuários que podem utilizar o Globus em um determinado Host;
Neste arquivo é realizado o mapeamento de uma credencial para um usuário físico no recurso;
Permite o mapeamento de diversas credenciais para um mesmo usuário físico;
SAML – define formatos para um número de tipos de especificações de segurança e um protocolo para recuperar estas especifica-ções;
GT 4.0 - Segurança 35
GT 4 – Serviço de Delegação e Single Sign-on
Serviço de delegação Interface que possibilita que clientes deleguem e
renovem X.509 proxy certificates para um serviço; Permite que uma única credencial delegada a um
Host seja compartilhada através das múltiplas invocações de serviços realizadas neste Host;
Single Sign-on Extensão das capacidades do protocolo SSL,
reduzindo o número de vezes que um usuário necessita entrar com a sua passphrase;
GT 4.0 - Segurança 36
GT 4 - Segurança
GT 4.0 - Segurança 37
GT 4 – CAS
Community Authorization Service (CAS) Possibilita que fornecedores de recursos
especifiquem políticas de controle de acesso a nível de comunidade (VO), ou seja, com a utilização do CAS não é necessário estabelecer políticas de acesso para cada usuário da grade mas sim, para cada VO que é composta por diversos usuários;
GT 4.0 - Segurança 38
GT 4 – Myproxy
É um repositório de credenciais (X.509 proxy credential) que elimina a necessidade de copiar a chave privada e os arquivos de certificados manualmente para os recursos. (se não for utilizado o myproxy, devem ser copiados os certificados e chaves privadas de cada usuário para cada máquina pertencente a grade);
Também pode ser utilizado para autenticação com o uso de portais;
GT 4.0 - Segurança 39
GT 4 – SimpleCA
O GT 4 oferece a possibilidade de instalar uma entidade emissora de certificados. Domínios que não tem contrato com alguma
emissora de certificados podem instalar o SimpleCA para assinar os certificados de usuários e de serviços.
GT 4.0 - Segurança 40
GT 4 – Questões de utilização Para todas as questões apresentadas, para a execução dos comandos o usuário deverá estar conectado a uma máquina que tenha o Globus instalado;
Questão: Se sou um usuário novo em uma grade, devo solicitar um certificado de usuário. Como: executar o comando grid-cert-request. Será gerada uma solicitação de certificado. Seguir as instruções apresentadas durante a execução do comando.
GT 4.0 - Segurança 41
GT 4 – Questões de utilização Questão: Se tenho um recurso para disponibilizar na grade. Como: Instalar o GT 4 e executar o comando grid-cert-request -host hostname para solicitar um certificado de host. Será gerada uma solicitação de certificado. Seguir as instruções apresentadas durante a execução do comando.
GT 4.0 - Segurança 42
GT 4 – Questões de utilização
Questão: Preciso renovar o meu certificado de usuário.Como: para renovar o prazo de validade do certificado, usar o comando grid-proxy-init. Será solicitado para que o usuário entre com o passphrase (o que foi informado durante a criação do certificado).
Os comandos apresentados aqui são da instalação padrão do Globus. Existem comandos específicos para utilização do SimpleCA, Myproxy e CAS.
GT 4.0 - Segurança 43
GT 4 – Segurança na GradeUFRGS
Integridade
Globus
Pople
pcpl8
Pascal
grade
Globus
Globus
Globus
Globus
PortalSimpleCAMyproxy
Usuáriosederdiego…
Usuárioglobususer
Usuárioglobususer
Usuárioglobususer
Usuárioglobususer
GT 4.0 - Segurança 44
GT 4 – Segurança na GradeUFRGS - Administração
grid-mapfile (arquivo globus alterado pelo administrador).
Permissões locais como direito de escrita/leitura sobre arquivos ...
Certificado do usuário
grid-mapfile
"/C=BR/O=CESUP/OU=GradeUFRGS/OU=cesup.ufrgs.br/CN=Eder Stone Fontoura" eder"/C=BR/O=CESUP/OU=GradeUFRGS/OU=cesup.ufrgs.br/CN=Globus User Pascal" globususer1"/O=Grid/OU=GlobusTest/OU=simpleCA-gradep.inf.ufrgs.br/OU=inf.ufrgs.br/CN=Globus User Gradep" globususer1"/C=BR/O=CESUP/OU=GradeUFRGS/OU=cesup.ufrgs.br/CN=Glaucio Teixeira Souza" globususer1"/C=BR/O=CESUP/OU=GradeUFRGS/CN=Usuario de Teste (Diego Gomes)" globususer1
GT 4.0 - Segurança 45
GT 4 – Segurança na GradeUFRGS - Certificados
Conecta-se em um recurso e executa grid-cert-request (gera arquivo contendo a solicitação do usuário). Envia arquivo para administrador assinar.
Certificado do usuário assinado - entity certificate
grid-proxy-init (cria ou renova certificado - proxy certificate)
Administrador da VO assina a solicitação do certificado (grid-ca-sign)e insere no gridmap-file de cada recurso (computador com o Globus instalado) uma entrada para este usuário.
Gridmap-file pode mapear um para um ou muitos para um.
GT 4.0 - Segurança 46
GT 4 – Segurança na GradeUFRGS - Delegação
integridade
Globuspople
Globus
Pascal
GlobusSubmete um job tipo multi-job
Submete os subjobs para os outros recursos
Conecta-se a pascal e renova o certificado proxy (recurso da VO Cesup)
Delegation Service efetua a transferência do certificado proxy da usuária Jane para os serviços/recursos utilizados para a execução do Job, para autenticação e autorização.
GT 4.0 - Segurança 47
GT 4 – Segurança na GradeUFRGS - Myproxy
Pascal
GT 4.0 - Segurança 48
GT 4 – Segurança na GradeUFRGS - Myproxy
Pascal
Integridade
Pascal
GT 4.0 - Segurança 49
GT 4 - Resumo
Utiliza certificados; X.509 end entity certificate; X.509 proxy certificate;
Comunicação segura; Criptografia;
Delegação de credenciais; Single Sign-on;
Principais componentes: Myproxy; CAS; SimpleCA;
GT 4.0 - Segurança 50
Bibliografia
A Globus Primer. http://www.globus.org/toolkit/docs/4.0/key/GT4_Primer_0.6.pdf.
Globus Toolkit Version 4 Grid Security Infrastructure: A Standards Perspective. http://www.globus.org/toolkit/docs/4.0/security/GT4-GSI-Overview.pdf.
GT4 CAS User's Guide. http://www.globus.org/toolkit/docs/4.0/security/cas/user-index.html.
Globus Toolkit Presentations and Tutorials. http://www.globus.org/toolkit/docs/4.0/security/myproxy/
GT 4.0 - Segurança 51
Revisão
Histórico do GT x versões? Histórico do GT x WS? Definição (visão) geral do GT 4? Principais requisitos? Arquitetura x visão lógica? Principais componentes? O que o GT 4 não faz?