こんにちは、20Bの @hijiki51 です。
普段は SysAd班 という部内のサービスを開発・運用している班で活動しています。
SysAd班
このページではtraPのSysAd班について紹介します。 SysAdとは “System Administrator” の略語で、直訳するとシステム管理人のことです。この言葉から分かるように、SysAd班は主にサークル内での交流や開発を支援するための活動を行なっています。まずはSysAd班で開発している主なサービスや利用しているアプリケーションについて紹介していきたいと思います。 SysAd班で開発しているサービスここでは、SysAd班が一から制作し、運用しているサービスについて紹介します。 traQtraQは、slackライクなコミュニケーションツールです。traP内部での会話や連絡は基…

traPには部員の情報を管理する traPortal というサービスがあります。
部員管理サービス traPortal の紹介
こんにちは 20B の @SSlime です。 この記事はtraP SysAd班(紹介ページ)で運用中の 部員管理サービス traPortal の紹介記事になります。 目次 サービスの概要 開発 traPortal v2 サービスの概要 traPortal はメンバーそれぞれの情報の管理や、招待コードの取得などの traP という組織を管理するような部分を担ったサービスです。 具体的には traPortal では現在、以下のことができます。 部員向け 入会手続き 自分のプロフィール・個人情報の管理 メンバーのプロフィールの閲覧 パスワードの変更 グループ・特権の閲覧 規約の閲覧 管理者…

しかし、traQのほうが先にあったため、各サービスやプロジェクトにおける部員情報の取得(IDやアイコンなど)は traQ が 認可・リソースサーバー として動いているという現状があります。
また、 OIDC なども実装されていないため、 OSS などを利用する際のアカウント連携が難しいという問題もあります。
そこで、 traPortal を 認可サーバー・リソースサーバーにすることで認証・認可周りを一元化するとともに、 OIDC を実装してアカウント連携を楽にしようという話が持ち上がりました。
とはいえ、OIDC/OAuth2.0 をある程度理解していないと実装はできません。そのために、今年9月ごろからOAuth2.0/OIDC 仕様書輪読会を始めました。
先日、RFC 6749 - The OAuth 2.0 Authorization Framework のすべて及び OAuth2.1のほとんどが読み終わったため、その資料を公開します。
- 1. Introduction
- 2. Client Registration
- 3. Protocol Endpoints
- 4.1 Authorization Code Grant
- 4.2 Implicit Grant - 4.5 Extension Grants
- 5. Issuing an Access Token
- 6. Refreshing an Access Token
- 7. Accessing Protected Resources
- 8. Extensibility
- 9. Native Applications
- 10.1 Client Authentication - 10.5 Authorization Codes
- 10.6 Authorization Code Redirection URI Manipulation - 10.11 Phishing Attacks
- 10.12 Cross-Site Request Forgery - 10.16 Misuse of Access Token to Impersonate Resource Owner in Implicit Flow
今後はOpenID Connect Core 1.0 incorporationg errata set 1 について読み進めていく予定です。
誤りや疑問があれば、気軽にコメント・指摘していただけるとありがたいです!