forked from Accedia/appleauth-net
-
Notifications
You must be signed in to change notification settings - Fork 0
/
AppleAuth.xml
201 lines (201 loc) · 9.91 KB
/
AppleAuth.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
<?xml version="1.0"?>
<doc>
<assembly>
<name>AppleAuth</name>
</assembly>
<members>
<member name="T:AppleAuth.AppleAuthProvider">
<summary>
<c>AppleAuthProvider</c> contains methods for retrieving an authorization token from Apple,
refreshing an existing token, generating `href` attribute for Sign In With Apple button
</summary>
<remarks>
The tokens returned from Apple authorization servers are short lived and should be used for creating
sessions or accounts in your system.
</remarks>
</member>
<member name="M:AppleAuth.AppleAuthProvider.#ctor(System.String,System.String,System.String,System.String,System.String)">
<summary>Constructor which initializes new instance of AppleAuthProvider with parameters used in the requests to Apple</summary>
<param name="clientId">A10-character key identifier obtained from your developer account. (aka "Service ID" that is configured for “Sign In with Apple”)</param>
<param name="teamId">A 10-character key identifier obtained from your developer account.</param>
<param name="keyId">A 10-character key identifier obtained from your developer account. Configured for "Sign In with Apple" </param>
<param name="redirectUrl">URL to which the user will be redirected after successful verification.
You need to configure a verified domain and map the redirect URL to it. Can’t be an IP address or localhost </param>
<param name="state">Can be used for any internal identifiers (e.g. Session IDs, User IDs, Query Strings, etc.)</param>
</member>
<member name="M:AppleAuth.AppleAuthProvider.GetAuthorizationToken(System.String,System.String)">
<summary>
Retrieves an <c>AuthorizationToken</c> object from Apple. Use this object to create users or sessions.
</summary>
<exception cref="T:AppleAuth.Exceptions.AppleRequestException">
Thrown when HTTP response from Apple is different than 200 OK.
</exception>
<returns>
AuthorizationToken object
</returns>
<params>
<param name="authorizationCode">Received from Apple after successfully redirecting the user</param>
<param name="privateKey">Content of the .p8 key file.</param>
</params>
<remarks>
For more information about Apple's error responses visit: https://developer.apple.com/documentation/sign_in_with_apple/errorresponse
</remarks>
</member>
<member name="M:AppleAuth.AppleAuthProvider.GetRefreshToken(System.String,System.String)">
<summary>
Verifies if a token is valid.
Use this method to check daily if the user is still signed in on your app using Apple ID.
</summary>
<exception cref="T:AppleAuth.Exceptions.AppleRequestException">
Thrown when HTTP response from Apple is different than 200 OK.
</exception>
<remarks>
For reference of Apple's error responses visit: https://developer.apple.com/documentation/sign_in_with_apple/errorresponse
</remarks>
<param name="refreshToken">Received from Apple when successfully retrieving an AuthorizationToken object</param>
<param name="privateKey">Content of the .p8 key file.</param>
<returns>
AuthorizationToken object containing only AuthorizationCode and Expiration
</returns>
</member>
<member name="M:AppleAuth.AppleAuthProvider.GetButtonHref">
<summary>
Generates url for the 'href' attribute of the "Sign in with Apple" button
</summary>
<remarks>
For information how to display the "Sign in with Apple" buttons visit: https://developer.apple.com/documentation/sign_in_with_apple/sign_in_with_apple_js/displaying_sign_in_with_apple_buttons
</remarks>
<returns>string/url</returns>
</member>
<member name="M:AppleAuth.AppleAuthProvider.SetUserInformation(AppleAuth.TokenObjects.AuthorizationToken)">
<summary>
Reads the JSON Web Token returned from apple
and creates new UserInformation object with information for the specific user
</summary>
<param name="tokenResponse">AuthorizationToken object</param>
</member>
<member name="M:AppleAuth.AppleAuthProvider.ReadPrivateKeyFromStream(System.IO.Stream)">
<summary>
Uses System.IO.StreamReader to read string from Stream
</summary>
</member>
<member name="M:AppleAuth.AppleAuthProvider.ValidateStringParameters(System.Collections.Generic.List{System.String})">
<summary>
If any parameter is null or empty string throws an exception
</summary>
</member>
<member name="T:AppleAuth.Cryptography.TokenGenerator">
<summary>
Class that manages generation of JWT tokens.
</summary>
</member>
<member name="M:AppleAuth.Cryptography.TokenGenerator.GenerateAppleClientSecret(System.String,System.String,System.String,System.String)">
<summary>
Generates the signed JSON Web Token
</summary>
<param name="privateKey"></param>
<param name="teamId"></param>
<param name="clientId"></param>
<param name="keyId"></param>
<returns></returns>
</member>
<member name="M:AppleAuth.Cryptography.TokenGenerator.VerifyAppleIDToken(System.String,System.String)">
<summary>
Verify if the token that Apple has sent is valid and genuine.
</summary>
<param name="token"></param>
<param name="clientId"></param>
</member>
<member name="T:AppleAuth.Exceptions.AppleRequestException">
<summary>
Encapsulates error response from Apple's REST API
</summary>
</member>
<member name="T:AppleAuth.Exceptions.InvalidParametersException">
<summary>
Thrown when one or more parameters is null or invalid.
</summary>
</member>
<member name="T:AppleAuth.TokenObjects.AuthorizationToken">
<summary>
Received from Apple after successfull authentication of the user.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.AuthorizationCode">
<summary>
(Reserved for future use) A token used to access allowed data.
Currently, no data set has been defined for access.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.ExpiresInSeconds">
<summary>
Expiration time of the token in seconds.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.Token">
<summary>
A JSON Web Token that contains the user’s identity information.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.RefreshToken">
<summary>
On success, the server issues a refresh token, which you use to validate if the user is still logged in using Apple ID.
Store this token securely on your server.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.TokenType">
<summary>
The type of access token. It will always be 'Bearer'.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.AuthorizationToken.UserInformation">
<summary>
Object containing information about the user.
</summary>
<remarks>
The user might choose to hide their email. In this case they use a private email with which you can
communicate via the Private Email Relay Service. For more info visit: https://developer.apple.com/documentation/sign_in_with_apple/sign_in_with_apple_js/communicating_using_the_private_email_relay_service
</remarks>
</member>
<member name="T:AppleAuth.TokenObjects.TokenType">
<summary>
Sets the value of "grant_type" when maing a request to Apple's authentication endpoint.
</summary>
</member>
<member name="F:AppleAuth.TokenObjects.TokenType.AuthorizationCode">
<summary>
Used for retrieving a JSON Web Token that contains the user’s identity information.
</summary>
</member>
<member name="F:AppleAuth.TokenObjects.TokenType.RefreshToken">
<summary>
Used for verifying if a token is valid.
</summary>
</member>
<member name="T:AppleAuth.TokenObjects.UserInformation">
<summary>
Object containing information about the user.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.UserInformation.UserID">
<summary>
Unique ID generated by Apple for your app.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.UserInformation.Email">
<summary>
Email address of the user.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.UserInformation.EmailVerified">
<summary>
Boolean value displaying if the user has verified email address.
</summary>
</member>
<member name="P:AppleAuth.TokenObjects.UserInformation.TimeOfAuthentication">
<summary>
UTC date and time of authentication.
</summary>
</member>
</members>
</doc>