1 / 64

University of Palestine

University of Palestine. Student Name: Majed Abusalama Student Number: 220060064 Teacher responsible : Yasmin Albobo College: IT. Revised v4Presenter. Google Apps APIs Ryan Boyd @ryguyrg (Google) with Marcos Farias @MarcosFariasBr (Just Digital). Agenda. Overview Building in the Cloud

glain
Download Presentation

University of Palestine

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. University of Palestine • Student Name: Majed Abusalama • Student Number: 220060064 • Teacher responsible : Yasmin Albobo • College: IT

  2. Revised v4Presenter Google Apps APIs Ryan Boyd @ryguyrg (Google)withMarcos Farias @MarcosFariasBr (Just Digital)

  3. Agenda Overview Building in the Cloud Data APIs  Application APIs Management APIs Authentication & Users Just Digital's SSO solution Hosting Apps Script Secure Data Connector Gadgets Q & A

  4. Google Apps: Tools for Today's User GMail  Huge inbox with search: keep and find everything. Talk  Business class IM and VC as easy as email. Groups  Let users easily create and work in teams. Calendar  Make sharing calendars and schedules easy. Docs  Makes collaborating as easy as creating Sites  Allow users to manage their own sites. Video  Unlock the power of video within your business. Postini  Security and compliance solutions.

  5. The Web is the Enterprise Platform

  6. Lots of Customers, Growing Fast Over 30M active users Over 3M businesses More than 3,000 new businesses signup every day  2008 2009 2010

  7. Building in the Cloud Apps from Google Google Apps

  8. Building in the Cloud 3rd Party Apps Apps from Google Google Apps Apps Marketplace

  9. Building in the Cloud 3rd Party Apps Apps from Google Custom Apps Google Apps Apps Marketplace Platform Services

  10. Building in the Cloud 3rd Party Apps Apps from Google Custom Apps Apps Marketplace Google Apps Platform Services Administration Enterprise Firewall

  11. Data APIs Overview

  12. Data APIs Overview Data AccessAPIs allow developers to integrate authenticated Google user data in their apps, using secure, standardized protocols.

  13. Standards-based Atom Publishing Protocol (AtomPub) HTTP REST Atom data format OAuth Authorization

  14. Authorization with OAuth

  15. Available Libraries Java .NET Objective-C PHP via Zend_Gdata Python

  16. Recent Developments Partial Response Partial Updates (using HTTP PATCH) JSON-C

  17. Application APIs

  18. Many Integration Points Gmail Calendar Contacts Documents List Sites Spreadsheets

  19. Google Calendar Calendars, Calendar Events, Access Control Lists Create (POST) Retrieve (GET) Update (PUT) Delete (DELETE)

  20. Google Calendar - Creating an Event <atom:entryxmlns:atom='http://www.w3.org/2005/Atom'xmlns:gd='http://schemas.google.com/g/2005'><atom:titletype='text'>Tennis with Beth</atom:title><atom:contenttype='text'>Meet for a quick lesson.</atom:content><gd:wherevalueString='Rolling Lawn Courts'></gd:where> <gd:whenstartTime='2006-04-17T15:00:00.000Z'         endTime='2006-04-17T17:00:00.000Z'></gd:when> </atom:entry>

  21. Google Calendar - Creating an Event POST /calendar/feeds/default/private/full Host: www.google.com Content-Length: 380 Content-Type: application/atom+xml <atom:entry xmlns:atom='http://www.w3.org/2005/Atom'xmlns:gd='http://schemas.google.com/g/2005'><atom:title type='text'>Tennis with Beth</atom:title><atom:content type='text'>Meet for a quick lesson.</atom:content><gd:where valueString='Rolling Lawn Courts'></gd:where><gd:when startTime='2006-04-17T15:00:00.000Z' endTime='2006-04-17T17:00:00.000Z'></gd:when></atom:entry>

  22. Google Calendar - Partial Update PATCH /calendar/feeds/default/private/full/eventID Host: www.google.com Content-Length: 380 Content-Type: application/atom+xml <atom:entryxmlns:atom='http://www.w3.org/2005/Atom'xmlns:gd='http://schemas.google.com/g/2005'gd:fields='atom:title'><atom:titletype='text'>Tennis with Beth and Kate</atom:title> </atom:entry>

  23. Gmail - Retrieving Email [connection begins]C: C01 CAPABILITYS: * CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA XLIST CHILDREN XYZZY SASL-IR AUTH=XOAUTHS: C01 OK CompletedC: A01 AUTHENTICATE XOAUTHR0VUIGh0dHBzOi8vbWFpbC5nb29nbGUuY29tL21haWwvYi9zb21ldXN S: A01 OK Success IMAP + OAuth

  24. Gmail - Sending Email [connection begins] S: 220 mx.google.com ESMTP 12sm2095603fks.9 C: EHLO sender.example.com S: 250-mx.google.com at your service, [172.31.135.47] S: 250-SIZE 35651584 S: 250-8BITMIME S: 250-AUTH LOGIN PLAIN XOAUTHS: 250-ENHANCEDSTATUSCODES S: 250 PIPELINING C: AUTH XOAUTHR0VUIGh0dHBzOi8vbWFpbC5nb29nbGUuY29tL21ha WwvYi9zb21ldXNlckBleGFtcGxlLmNvbS9zbXRwLyBvYXV0aF9jb25zdS: 235 2.7.0 Accepted SMTP + OAuth

  25. Management APIs

  26. Many Integration Points Provisioning Calendar Resources E-mail migration E-mail settings Reporting Audit 

  27. Examples: E-mail Settings import gdata.apps.emailsettings.client...client = gdata.apps.emailsettings.client.EmailSettingsClient(domain='yourdomain') ... auth ... client.UpdateSignature(username='liz', signature="Liz Jones - (+1) 619-555-5555\n" +"Working in Accounts Management, A&Z LTD.")

  28. Authentication & Users

  29. Where are the User Accounts? Goal: They all work together! Cloud Apps Google Apps On Premise

  30. How does Apps work with On Premise? Accounts must exist in Google Apps Passwords can be anywhere!

  31. Where are the User Accounts? On Premise Google Apps

  32. What about the Passwords? 1. On Premise Google Apps OR SAML 2.

  33. What is SAML? Company hosts own login page - publicly or behind a firewall User goes to login, Google redirects user to company login page Google Apps trusts the company to assert the identity of the user

  34. What about 3rd Party Apps? Google Apps users can sign in with their existing accounts User goes to login, app redirects user to Google Apps login page App trusts Google to assert the identity of the user

  35. solução de single sign-on desenvolvida pela

  36. Desafios Ambiente de Login Único Suporte Caso de uso

  37. Caso de Uso - Exemplo

  38. COMO FUNCIONA Usuário tenta acessar um serviço hospedado no Google Apps Google Just SSO Usuário Início 1 2 Browser Google recebe o pedido de acesso e redireciona o browser para a url da página de Login do Just SSO O Just SSO analisa a requisição e exibe a página com o formulário de login/senha. 3 Usuário informa seu login e senha 4 Google verifica a resposta do Just SSO e redireciona-o ao serviço solicitado. O Just SSO verifica a credencial informada e caso seja válida e autorizado pelo Serviço de Diretório, uma resposta autorizando o acesso é enviada para o Google Apps. 6 5 7

  39. Provisioning API - Passo 1 Antes de qualquer coisa, você precisa habilitar a Provisioning API no seu domínio Google Apps.

  40. Provisioning API - Passo 2 Conecte sua aplicação à nuvem:import sample.appsforyourdomain.AppsForYourDomainClient;...AppsForYourDomainClient client = new AppsForYourDomainClient( adminEmail, adminPassword, dominio);

  41. Provisioning API - Exemplos Suspendendo o usuário client.suspendUser("marcos"); Obtém o usuário: import com.google.gdata.data.appsforyourdomain.provisioning.UserEntry;UserEntry usuario = client.retrieveUser("marcos");

  42. Provisioning API - Exemplos Criando novo usuário: client.createUser( "newUser", // login/email "Usuário", // Nome "Novo", // Sobrenome "senhaInicial"); // Senha

  43. Solução

  44. Mais informações Marcos Farias marcos@justdigital.com.br @MarcosFariasBr http://www.justdigital.com.br/

  45. Hosting your App

  46. You can Host your App Anywhere! Servers on premise in your corporate data center Cloud servers in Amazon EC2, Azure, etc Your servers at a commercial hosting service Your desktops anywhere

  47. App Engine too! Easy to build Easy to maintain Easy to scale

  48. App Engine for Business Auth for the Enterprise Administration for the Enterprise Support and SLAs for the Enterprise SQL, SQL, SQL $8/user/month per app

  49. Scripting

More Related