Token
2 TopicsObtaing access token in a Web Part
Hi , We have a website with a game that uses Azure AD to authenticate the users. One of our clients has decided to put the website inside their Sharepoint and now they want avoid the "relogin" against their Azure AD. If they are logged in their Sharepoint, they want be logged in my website at the same time. Our doubt is simple. We have developed a Sharepoint Web Part. Inside this Web Part we have an iframe to render our website that login against Azure AD. Our client don' t want to relogin in our website and prefers that the login will be automatic according to the access token of the session Sharepoint. We need to know the way to obtain the Sharepoint access token to pass it to our website ----------------------------------------------------------------------------------------------------------------- import { Version } from '@microsoft/sp-core-library'; import { IPropertyPaneConfiguration, PropertyPaneTextField } from '@microsoft/sp-property-pane'; import { BaseClientSideWebPart } from '@microsoft/sp-webpart-base'; import { escape } from '@microsoft/sp-lodash-subset'; import styles from './TestwebpartWebPart.module.scss'; import * as strings from 'TestwebpartWebPartStrings'; export interface ITestwebpartWebPartProps { description: string; } export default class TestwebpartWebPart extends BaseClientSideWebPart <ITestwebpartWebPartProps> { public render(): void { var access_token = ¿¿?? this.domElement.innerHTML = ` <iframe src='https://ourapp.es/?token=${access_token}'/>`; } protected get dataVersion(): Version { return Version.parse('1.0'); } protected getPropertyPaneConfiguration(): IPropertyPaneConfiguration { return { pages: [ { header: { description: strings.PropertyPaneDescription }, groups: [ { groupName: strings.BasicGroupName, groupFields: [ PropertyPaneTextField('description', { label: strings.DescriptionFieldLabel }) ] } ] } ] }; } }3.9KViews0likes3CommentsHow can I get the user token from the context in a Sharepoint WebPart?
I have been working in a Sharepoint Webpart with TypeScript. I would like to obtain the user token to pass it as a parameter in the headers. How can I do this?. So far, I have something like this: public render(): void { ... let request = this.getRequest(param1); ... } protected getRequest(param1: string): Promise<any> { let loginURL = this.properties.url+"/admin/api/v2/list"; let body = '{"param":"'+param1+'"}'; let requestHeaders: Headers = new Headers(); requestHeaders.append("Accept-Tos", "true"); requestHeaders.append("Content-Type", "application/json"); requestHeaders.append("respondWithObject", "true"); **requestHeaders.append('Authorization', 'Bearer <TOKEN>'); ????** let httpClientOptions: IHttpClientOptions = { body: body, headers: requestHeaders }; return this.context.httpClient.post( loginURL, HttpClient.configurations.v1, httpClientOptions) .then((response: HttpClientResponse): any => { return response.json(); }); } Regards4.4KViews0likes1Comment