16

"Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Embed Size (px)

DESCRIPTION

Summer Tech Days - Identity Management, 9.07.2013

Citation preview

Page 1: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska
Page 2: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

<Insert Picture Here> <Insert Picture Here>

Bezpieczne API, jak organizacja może

minimalizować ryzyko korzystania z "web

services" w sieci.

Page 3: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

WS Request

<soapenv:Envelope

xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:alx="http://alx/">

<soapenv:Header/>

<soapenv:Body>

<alx:addInput>

<arg0>4</arg0>

<arg1>5</arg1>

</alx:addInput>

</soapenv:Body>

</soapenv:Envelope>

Page 4: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Confidentiality - Poufność

Integrity - Integralność

Avaliability - Dostępność

Page 5: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Narzędzia

• Uwierzytelnianie

• Autoryzacja

• Szyfrowanie

• Podpis cyfrowy

• Integralność

• Niezaprzeczalność

Page 6: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Jakie API ?

• Web Services Protocols: SOAP 1.1 & 1.2, SwA,

MTOM, Plain XML (POX), REST, Web 2.0 (Ajax,

JSON), UDDI, WSDL

• Transport Protocols: TCP, HTTP 1.0 & 1.1, JMS, MQ,

FTP, SFTP, SMTP, POP.

• Security and Policy Model: SSL, XML Encryption,

XML Signature, WS-Security (SAML, Kerberos,

Username, X.509 token profiles), WS-Policy, WS-

SecurityPolicy, WS-Trust, WS-SecureConversation,

WS-Addressing, WS-RM, XACML, XKMS, PKCS#1,

PKCS#7, PKCS#12, S/MIME., OAuth

Page 7: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Web

Service

Web

Service

OWSM

Agent

Architektura Referencyjna

DMZ

HTTP GET/POST

REST

XML

SOAP

JMS

Extranet

Pierwsza linia

obrony

Bezpieczaństwo

„Last mile”

Intranet

Web Client

(Browser)

Web Service

Client

Web Service

Client

Web Service

Client

Web Service

Client

OWSM

Agent

Service Bus

OWSM

Agent

OW

SM

O

WS

M

Web

Service

OWSM

Agent

Web

Service

OWSM

Agent

Web

Service

OWSM

Agent

Common Security Policies

OAG

Page 8: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

API Security

• Bezpieczeństwo API

• Ochrona przed zagrożeniami Zagrożenia

• Kontrola dostępu i tożsamości

• Bezpieczeństwo danych („data redaction”)

• Zarządzanie API

• QOS

• Transformacje i „Routing”

• Audyt i Monitorowanie

• Zarządzanie kluczami do API

Page 9: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Bezpieczeństwo Web Service’ów

• Bezpieczeństwo warstwy transportowej

• Point to Point - SSL

• Standardowy mechanizm uwierzytelniania HTTP

• W SSL Brak informacji o użytkowniku aplikacji

• Poufność

• Integralność

Page 10: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Bezpieczeństwo Web Service’ów

Bezpieczeństwo warstwy wiadomość

• Wiadomość same się chronią

• Uwierzytelnianie, Poufność, Integralność

• Niezależne od warstwy transportowej

Page 11: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Uwierzytelnianie

• Dostępne tokeny

• Certyfikaty X.509

• Kerberos tickets

• UserID/Password

• SAML - Assertion

• ObSSO Cookie (Oracle Access Manager)

• Custom defined token

Page 12: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Uwierzytelnianie cd

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

xmlns:alx="http://alx/">

<soapenv:Header>

<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-

open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">

<wsse:UsernameToken wsu:Id="UsernameToken-5" xmlns:wsu="http://docs.oasis-

open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">

<wsse:Username>owsmuser</wsse:Username>

<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-

username-token-profile-1.0#PasswordText">abcd1234</wsse:Password>

</wsse:UsernameToken>

</wsse:Security>

</soapenv:Header>

<soapenv:Body>

<alx:addInput>

<arg0>5</arg0>

<arg1>8</arg1>

</alx:addInput>

</soapenv:Body>

</soapenv:Envelope>

Page 13: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

Integralność

• Standard Podpisu wg. W3C - XML Signature

• Podpisywanie wybranych elementów

• Niezaprzeczalność - Non-repudiation

Page 14: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

OWSM - Poufność

• Stadnard szyfrowania - W3C XML Encryption

• Szyfrowanie wybranych elementów

Page 15: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska

OWSM - Wydajność

Pamiętajmy !!!

Szyfrowanie i podpisywanie cyfrowe wymaga zasobów

Page 16: "Bezpieczne API, jak organizacja może minimalizować ryzyko korzystania z "web services" w sieci." Aleksander Jachowicz, Enterprise Security Solution Architect, Oracle Polska