https://github.com/skyway/authentication-samples
https://github.com/skyway/authentication-samples
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/skyway/authentication-samples
- Owner: skyway
- License: mit
- Created: 2023-01-27T12:10:33.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-04-21T05:58:24.000Z (about 1 year ago)
- Last Synced: 2025-04-24T03:09:20.129Z (about 1 year ago)
- Language: PHP
- Size: 369 KB
- Stars: 0
- Watchers: 10
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SkyWay Authentication Sample
このリポジトリには、SkyWayで利用する認証情報を生成・取得するサンプルがあります。
SkyWayにおけるエンドユーザーの認証・認可について、詳細は[開発者ドキュメントのSkyWay Auth Tokenのページ](https://skyway.ntt.com/ja/docs/user-guide/authentication/skyway-auth-token/)をご覧ください。
## サーバーアプリケーション
`/authenticate`にてPOSTリクエストを受け付け、認証情報の発行を行います。
### NodeJSサーバー
server/nodejsディレクトリに移動して依存ライブラリをインストールしてください。
次に、index.jsファイルをテキストエディタで開き、 `appId` と `secretKey` の各変数の値を自身のApp ID、Secret Keyに書き換えてファイルを保存してください。
その後、 `npm start` コマンドでサーバーを起動してください。
サーバーは8080ポートを使用します。
```sh
cd server/nodejs
npm i
npm start
```
### PHPサーバー
server/on-cloud-run-functions/phpディレクトリに移動して、[Composer](https://getcomposer.org/) で依存ライブラリをインストールしてください。
次に、環境変数 `APP_ID` と `SECRET_KEY`、 `VALID_FIXED_SESSION_TOKEN` に値を設定してください。
- `APP_ID` と `SECRET_KEY`は、それぞれ自身のApp ID、Secret Keyを設定してください。
- `VALID_FIXED_SESSION_TOKEN`は、クライアントアプリケーションを検証する際に用いる固定値を設定してください。
- 後述のクライアントアプリケーションをそのまま使う場合は、[`4CXS0f19nvMJBYK05o3toTWtZF5Lfd2t6Ikr2lID`](https://github.com/skyway/authentication-samples/blob/ea675724d7458c0f765b018c1698980493f8b06b/client/index.js#L15)を設定してください。
- サンプルのため、クライアントアプリケーションからの[リクエストボディの sessionToken パラメーター](https://github.com/skyway/authentication-samples/blob/ea675724d7458c0f765b018c1698980493f8b06b/client/index.js#L15)と比較で検証する作りにしています。本番環境では、より高度な検証方法を用いられることが望ましいです。
環境変数の設定ができない場合は、 .env.example ファイルの名前を .env に変更し、上記3変数に値を設定してファイルを保存してください。
その後、環境変数`FUNCTION_TARGET`を設定し、`php -S localhost:8080` コマンドでローカルサーバーを起動してください。
サーバーは8080ポートを使用します。
```sh
cd server/on-cloud-run-functions/php
composer install
FUNCTION_TARGET=main php -S localhost:8080 vendor/google/cloud-functions-framework/router.php
```
## クライアントアプリケーション
サーバーアプリケーションにリクエストを行い、認証情報を取得します。
clientディレクトリをホスティングし、ブラウザから`index.html`にアクセスしてください。
### 操作方法
1. Room Name、Member Nameのテキストボックスに文字列を入力します。
2. Get credentialボタンを押下します。
3. 認証情報の取得に成功すると、結果がCredentialのエリアにJSON形式で出力されます。
- `authToken`がアプリケーションからSkyWayを利用する際に必要となります
4. Copy authToken to clipboardボタンを押下することで、クリップボードに `authToken`がコピーされます。
### スクリーンショット

## 公開リポジトリの運用方針について
このリポジトリは公開用のミラーリポジトリであり、こちらで開発は行いません。
### Issue / Pull Request
受け付けておりません。
Enterpriseプランをご契約のお客様はテクニカルサポートをご利用ください。
詳しくは[SkyWayサポート](https://support.skyway.ntt.com/hc/ja)をご確認ください。