SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
APEXで作成したREST APIをしっかり保護する⽅法
⽇本オラクル 中嶋⼀樹
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 2
REST API
apex.oracle.com 3rd Party Application
• ときにウェブサービス
• ときにモバイルアプリ
• ときにBot
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 3
REST API
apex.oracle.com 3rd Party Application
鍵(トークン)が必要
*パスワードではない 
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 4
REST API
3rd Party Application
*パスワードではない 
友達リストをゲットしたいんだけど。
どうするよ?
①②
③
よかろう
④
これトークンな。
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
⼀般的にはOAuth2.0 + Authorizationヘッダーへのトークン付加
5
• そもそもは、パスワードをそのまま渡すよりセキュアな認可の仕組み。
• ⼤事なパスワードを教えることなく、必要な権限だけ許可できる。
• ユーザーがパスワードを変更しても影響を受けない。
• トークンの失効、リフレッシュといった仕組みの完備。
• HTTPヘッダーを使うことでトークンが露出しにくい(気休め程度)
• 複数のフローが定義されており、いろんなシチュエーションに対応できる。
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Database CloudでもOAuth2.0できます
6
Qiita: apex.oracle.comのAPIをOAuth2.0で保護する⽅法
(apex.oracle.com含む)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
ただし、
7
• Userごとの認証・認可には向いているが、Server to Serverでは?
• そもそもどのユーザーで認可すれば?
• リフレッシュ処理が定期的に必要だが無駄なオーバーヘッドになる。
REST API
apex.oracle.com 3rd Party Application
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 8
Server to ServerのアクセスだけであればURIへのトークン埋め込みでもOK
• 脆弱な気がするが、SSLしていればヘッダーでもURIでも暗号化されている。
• 例えばFacebookのMessage APIではQuery Stringにトークンを指定する仕様
https://graph.facebook.com/v2.8/me/messages?access_token=あなたのトークン
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Database CloudでもURIへのトークン埋め込みは超簡単
9
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 10
ただし、
• サービスがマルチテナント型だったり、
ユーザーによってアクセスできるデー
タを制御する必要がある場合。
その場合の対処固定トークンでは対応できないケース
• トークンをバインド変数にしてSQL or
PL/SQLで制御する。(データ構造をマル
チテナント・マルチユーザー対応にしておく必
要あり)
• WORKSPACEまたはPDBをテナント毎
に作成する。(ユーザー毎だとこのやり⽅は
キツい)
Apexで作成したrest apiをしっかり保護する方法

Weitere ähnliche Inhalte

Was ist angesagt?

[D35] インメモリーデータベース徹底比較 by Komori
[D35] インメモリーデータベース徹底比較 by Komori[D35] インメモリーデータベース徹底比較 by Komori
[D35] インメモリーデータベース徹底比較 by Komori
Insight Technology, Inc.
 

Was ist angesagt? (20)

リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」
 
Zero Data Loss Recovery Appliance 設定手順例
Zero Data Loss Recovery Appliance 設定手順例Zero Data Loss Recovery Appliance 設定手順例
Zero Data Loss Recovery Appliance 設定手順例
 
Architecting for AWS
Architecting for AWSArchitecting for AWS
Architecting for AWS
 
20210317 AWS Black Belt Online Seminar Amazon MQ
20210317 AWS Black Belt Online Seminar Amazon MQ 20210317 AWS Black Belt Online Seminar Amazon MQ
20210317 AWS Black Belt Online Seminar Amazon MQ
 
[D35] インメモリーデータベース徹底比較 by Komori
[D35] インメモリーデータベース徹底比較 by Komori[D35] インメモリーデータベース徹底比較 by Komori
[D35] インメモリーデータベース徹底比較 by Komori
 
Kong Enterprise の紹介
Kong Enterprise の紹介Kong Enterprise の紹介
Kong Enterprise の紹介
 
PO ファイルで翻訳管理
PO ファイルで翻訳管理PO ファイルで翻訳管理
PO ファイルで翻訳管理
 
IP電話交換機ソフト Asterisk について
IP電話交換機ソフト Asterisk についてIP電話交換機ソフト Asterisk について
IP電話交換機ソフト Asterisk について
 
インターネットの仕組み enPiT資料
インターネットの仕組み enPiT資料インターネットの仕組み enPiT資料
インターネットの仕組み enPiT資料
 
NEW LAUNCH! Amazon EC2 Bare Metal Instances - CMP330 - re:Invent 2017
NEW LAUNCH! Amazon EC2 Bare Metal Instances - CMP330 - re:Invent 2017NEW LAUNCH! Amazon EC2 Bare Metal Instances - CMP330 - re:Invent 2017
NEW LAUNCH! Amazon EC2 Bare Metal Instances - CMP330 - re:Invent 2017
 
AWS Black Belt Online Seminar 2018 AWS上の位置情報
AWS Black Belt Online Seminar 2018 AWS上の位置情報AWS Black Belt Online Seminar 2018 AWS上の位置情報
AWS Black Belt Online Seminar 2018 AWS上の位置情報
 
既存Redshift/ETLからSpectrum/Glueへの移行を徹底解明!
既存Redshift/ETLからSpectrum/Glueへの移行を徹底解明!既存Redshift/ETLからSpectrum/Glueへの移行を徹底解明!
既存Redshift/ETLからSpectrum/Glueへの移行を徹底解明!
 
Kubernetesによる機械学習基盤、楽天での活用事例 覃子麟 (チンツーリン) /楽天株式会社
Kubernetesによる機械学習基盤、楽天での活用事例  覃子麟 (チンツーリン) /楽天株式会社Kubernetesによる機械学習基盤、楽天での活用事例  覃子麟 (チンツーリン) /楽天株式会社
Kubernetesによる機械学習基盤、楽天での活用事例 覃子麟 (チンツーリン) /楽天株式会社
 
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
 
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
 
Computing at the Edge with AWS Greengrass and Amazon FreeRTOS, ft. Enel (IOT2...
Computing at the Edge with AWS Greengrass and Amazon FreeRTOS, ft. Enel (IOT2...Computing at the Edge with AWS Greengrass and Amazon FreeRTOS, ft. Enel (IOT2...
Computing at the Edge with AWS Greengrass and Amazon FreeRTOS, ft. Enel (IOT2...
 
Azureの概要と学生無料枠内でWebアプリをデプロイするまで
Azureの概要と学生無料枠内でWebアプリをデプロイするまでAzureの概要と学生無料枠内でWebアプリをデプロイするまで
Azureの概要と学生無料枠内でWebアプリをデプロイするまで
 
Python開発者のためのHeroku入門
Python開発者のためのHeroku入門Python開発者のためのHeroku入門
Python開発者のためのHeroku入門
 
20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 

Andere mochten auch

Force.com canvas入門ガイド
Force.com canvas入門ガイドForce.com canvas入門ガイド
Force.com canvas入門ガイド
Kazuki Nakajima
 
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
取締役
 

Andere mochten auch (17)

Waterfall cafeで働くBot
Waterfall cafeで働くBotWaterfall cafeで働くBot
Waterfall cafeで働くBot
 
AIが入った栄養士Botのアーキテクチャー
AIが入った栄養士BotのアーキテクチャーAIが入った栄養士Botのアーキテクチャー
AIが入った栄養士Botのアーキテクチャー
 
無償のAPEXワークスペース取得方法
無償のAPEXワークスペース取得方法無償のAPEXワークスペース取得方法
無償のAPEXワークスペース取得方法
 
Oracle Cloudのjava実行環境
Oracle Cloudのjava実行環境Oracle Cloudのjava実行環境
Oracle Cloudのjava実行環境
 
実はDatabase cloudだけで実現できる巷で噂の機械学習とは?
実はDatabase cloudだけで実現できる巷で噂の機械学習とは?実はDatabase cloudだけで実現できる巷で噂の機械学習とは?
実はDatabase cloudだけで実現できる巷で噂の機械学習とは?
 
畑と会話するニュータイプなIo tアプリで加熱中の技術トレンドを鷲掴みにする45分
畑と会話するニュータイプなIo tアプリで加熱中の技術トレンドを鷲掴みにする45分畑と会話するニュータイプなIo tアプリで加熱中の技術トレンドを鷲掴みにする45分
畑と会話するニュータイプなIo tアプリで加熱中の技術トレンドを鷲掴みにする45分
 
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
 
Force.com canvas入門ガイド
Force.com canvas入門ガイドForce.com canvas入門ガイド
Force.com canvas入門ガイド
 
海外で人気沸騰中のIo tデバイスとdatabase cloudで構成するシンプルなiot構成を学ぶ
海外で人気沸騰中のIo tデバイスとdatabase cloudで構成するシンプルなiot構成を学ぶ海外で人気沸騰中のIo tデバイスとdatabase cloudで構成するシンプルなiot構成を学ぶ
海外で人気沸騰中のIo tデバイスとdatabase cloudで構成するシンプルなiot構成を学ぶ
 
キャンバス個人用アプリ 速習ガイド
キャンバス個人用アプリ 速習ガイドキャンバス個人用アプリ 速習ガイド
キャンバス個人用アプリ 速習ガイド
 
AIを組み込んだ近未来のアプリケーションで感じる新しいサービスの新しい開発手法
AIを組み込んだ近未来のアプリケーションで感じる新しいサービスの新しい開発手法AIを組み込んだ近未来のアプリケーションで感じる新しいサービスの新しい開発手法
AIを組み込んだ近未来のアプリケーションで感じる新しいサービスの新しい開発手法
 
今さらきけない環境ハブ
今さらきけない環境ハブ今さらきけない環境ハブ
今さらきけない環境ハブ
 
Ohotech特盛#13 スマホで操作する カメラ付きWi-Fiラジコンカー ― C#とラズパイとWebアプリの技術で作っちゃおう! ―
Ohotech特盛#13 スマホで操作するカメラ付きWi-Fiラジコンカー ― C#とラズパイとWebアプリの技術で作っちゃおう! ―Ohotech特盛#13 スマホで操作するカメラ付きWi-Fiラジコンカー ― C#とラズパイとWebアプリの技術で作っちゃおう! ―
Ohotech特盛#13 スマホで操作する カメラ付きWi-Fiラジコンカー ― C#とラズパイとWebアプリの技術で作っちゃおう! ―
 
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
 
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
 
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
野澤陽介(Yosuke nozawa)|自己紹介スライド 2014ver
 
ライトニングトーク - とある LINE Bot の開発記「とても腹立たしいことがあったのです」
ライトニングトーク - とある LINE Bot の開発記「とても腹立たしいことがあったのです」ライトニングトーク - とある LINE Bot の開発記「とても腹立たしいことがあったのです」
ライトニングトーク - とある LINE Bot の開発記「とても腹立たしいことがあったのです」
 

Ähnlich wie Apexで作成したrest apiをしっかり保護する方法

#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
Kazuya Sugimoto
 

Ähnlich wie Apexで作成したrest apiをしっかり保護する方法 (20)

#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
 
APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集
 
20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code20171005 告白に学ぶ http status code
20171005 告白に学ぶ http status code
 
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
 
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門 (NetOpsCoding#2)
 
第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 Laravel第104回 php勉強会@東京 Laravel
第104回 php勉強会@東京 Laravel
 
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリWordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
 
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップSORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
 
Spring social の基礎
Spring social の基礎Spring social の基礎
Spring social の基礎
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
 
Robotium を使った UI テスト
Robotium を使った UI テストRobotium を使った UI テスト
Robotium を使った UI テスト
 
楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa
 
Sl study 20150804-soft-layer-apibasic-shibata
Sl study 20150804-soft-layer-apibasic-shibataSl study 20150804-soft-layer-apibasic-shibata
Sl study 20150804-soft-layer-apibasic-shibata
 
WordPressAPI
WordPressAPIWordPressAPI
WordPressAPI
 
APIに関するセッション資料
APIに関するセッション資料APIに関するセッション資料
APIに関するセッション資料
 
AzureでLaravel動かしてみた
AzureでLaravel動かしてみたAzureでLaravel動かしてみた
AzureでLaravel動かしてみた
 
SQLを書くだけでAPIが作れる基盤
SQLを書くだけでAPIが作れる基盤SQLを書くだけでAPIが作れる基盤
SQLを書くだけでAPIが作れる基盤
 
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開するKeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
 
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
Mobage Connect と Identity 関連技術への取り組み - OpenID Summit Tokyo 2015
 

Mehr von Kazuki Nakajima

活躍中のアプリケーションから紐解くForcecom
活躍中のアプリケーションから紐解くForcecom活躍中のアプリケーションから紐解くForcecom
活躍中のアプリケーションから紐解くForcecom
Kazuki Nakajima
 
Socialvoice for support intro
Socialvoice for support introSocialvoice for support intro
Socialvoice for support intro
Kazuki Nakajima
 
Socialvoice for sales intro
Socialvoice for sales introSocialvoice for sales intro
Socialvoice for sales intro
Kazuki Nakajima
 
App exchange conference facebookがビジネスアプリに与えるインパクト
App exchange conference   facebookがビジネスアプリに与えるインパクトApp exchange conference   facebookがビジネスアプリに与えるインパクト
App exchange conference facebookがビジネスアプリに与えるインパクト
Kazuki Nakajima
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発
Kazuki Nakajima
 

Mehr von Kazuki Nakajima (18)

ビーコンBotによるニュータイプな受付
ビーコンBotによるニュータイプな受付ビーコンBotによるニュータイプな受付
ビーコンBotによるニュータイプな受付
 
Spring'15 ISV様向け新機能紹介
Spring'15 ISV様向け新機能紹介Spring'15 ISV様向け新機能紹介
Spring'15 ISV様向け新機能紹介
 
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
絶対使いたくなるAppexchangeアプリとそのアーキテクチャー
 
ビジネスアイデアを最速で形にできるApp exchange
ビジネスアイデアを最速で形にできるApp exchangeビジネスアイデアを最速で形にできるApp exchange
ビジネスアイデアを最速で形にできるApp exchange
 
活躍中のアプリケーションから紐解くForcecom
活躍中のアプリケーションから紐解くForcecom活躍中のアプリケーションから紐解くForcecom
活躍中のアプリケーションから紐解くForcecom
 
Upwardのご紹介
Upwardのご紹介Upwardのご紹介
Upwardのご紹介
 
Salesforce1入門
Salesforce1入門Salesforce1入門
Salesforce1入門
 
Drawloop intro
Drawloop introDrawloop intro
Drawloop intro
 
Sugoisurvey intro
Sugoisurvey introSugoisurvey intro
Sugoisurvey intro
 
Rakumo intro
Rakumo introRakumo intro
Rakumo intro
 
Motionboard intro
Motionboard introMotionboard intro
Motionboard intro
 
Teamspirit intro
Teamspirit introTeamspirit intro
Teamspirit intro
 
Socialvoice for support intro
Socialvoice for support introSocialvoice for support intro
Socialvoice for support intro
 
Socialvoice for sales intro
Socialvoice for sales introSocialvoice for sales intro
Socialvoice for sales intro
 
Eventregist Intro
Eventregist IntroEventregist Intro
Eventregist Intro
 
App exchange conference facebookがビジネスアプリに与えるインパクト
App exchange conference   facebookがビジネスアプリに与えるインパクトApp exchange conference   facebookがビジネスアプリに与えるインパクト
App exchange conference facebookがビジネスアプリに与えるインパクト
 
さあ、はじめよう。Application Partner
さあ、はじめよう。Application Partnerさあ、はじめよう。Application Partner
さあ、はじめよう。Application Partner
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発
 

Kürzlich hochgeladen

Kürzlich hochgeladen (11)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

Apexで作成したrest apiをしっかり保護する方法

  • 1. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEXで作成したREST APIをしっかり保護する⽅法 ⽇本オラクル 中嶋⼀樹
  • 2. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 2 REST API apex.oracle.com 3rd Party Application • ときにウェブサービス • ときにモバイルアプリ • ときにBot
  • 3. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 3 REST API apex.oracle.com 3rd Party Application 鍵(トークン)が必要 *パスワードではない 
  • 4. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 4 REST API 3rd Party Application *パスワードではない  友達リストをゲットしたいんだけど。 どうするよ? ①② ③ よかろう ④ これトークンな。
  • 5. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | ⼀般的にはOAuth2.0 + Authorizationヘッダーへのトークン付加 5 • そもそもは、パスワードをそのまま渡すよりセキュアな認可の仕組み。 • ⼤事なパスワードを教えることなく、必要な権限だけ許可できる。 • ユーザーがパスワードを変更しても影響を受けない。 • トークンの失効、リフレッシュといった仕組みの完備。 • HTTPヘッダーを使うことでトークンが露出しにくい(気休め程度) • 複数のフローが定義されており、いろんなシチュエーションに対応できる。
  • 6. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Database CloudでもOAuth2.0できます 6 Qiita: apex.oracle.comのAPIをOAuth2.0で保護する⽅法 (apex.oracle.com含む)
  • 7. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | ただし、 7 • Userごとの認証・認可には向いているが、Server to Serverでは? • そもそもどのユーザーで認可すれば? • リフレッシュ処理が定期的に必要だが無駄なオーバーヘッドになる。 REST API apex.oracle.com 3rd Party Application
  • 8. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 8 Server to ServerのアクセスだけであればURIへのトークン埋め込みでもOK • 脆弱な気がするが、SSLしていればヘッダーでもURIでも暗号化されている。 • 例えばFacebookのMessage APIではQuery Stringにトークンを指定する仕様 https://graph.facebook.com/v2.8/me/messages?access_token=あなたのトークン
  • 9. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Database CloudでもURIへのトークン埋め込みは超簡単 9
  • 10. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 10 ただし、 • サービスがマルチテナント型だったり、 ユーザーによってアクセスできるデー タを制御する必要がある場合。 その場合の対処固定トークンでは対応できないケース • トークンをバインド変数にしてSQL or PL/SQLで制御する。(データ構造をマル チテナント・マルチユーザー対応にしておく必 要あり) • WORKSPACEまたはPDBをテナント毎 に作成する。(ユーザー毎だとこのやり⽅は キツい)