Configure OIDC (OpenId Connect) identity provider to authenticate to SharePoint Online /Office 365

Does anybody know how to configure OIDC (OpenId Connect) identity provider such as identity server 4 ( to authenticate to SharePoint online?

Looked at the following blog but it uses SAML 2.0 instead of OpenId Connect.

Any body configured SharePoint Online with OpenID Connect identity provider?


ASP.Net Core 3, add Identity from external assembly. Failed reference

I am trying to add Identity service from external assembly.

When I do:

using System;     using Microsoft.AspNetCore.Hosting;     using Microsoft.AspNetCore.Identity;     using Microsoft.EntityFrameworkCore;     using Assemblies.IHostingStartupAssembly.IdentityStartup.Data;      [assembly: HostingStartup(typeof(Assemblies.IHostingStartupAssembly.IdentityStartup.IdentityStartupAssembly))]     namespace Assemblies.IHostingStartupAssembly.IdentityStartup     {         public class IdentityStartupAssembly : IHostingStartup         {             public void Configure(IWebHostBuilder builder)             {                 builder.ConfigureServices((services) =>                 {                     services.AddDbContext<ApplicationDbContext>(options =>                    options.UseSqlServer(                        Configuration.GetConnectionString("DefaultConnection")));                     services.AddDefaultIdentity<IdentityUser>()                         .AddEntityFrameworkStores<ApplicationDbContext>();                 });             }            }     } 

I found that

IServiceCollection” does not contain a definition for “AddDbContext” or an accessible extension method “AddDbContext” that accepts a first argument of type “IServiceCollection” (missing any using directive or an assembly reference?)

and the same for AddDefaultIdentity

It is a sample scenario. But why it miss the reference? Here package references:

<ItemGroup>             <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.0.0-preview6.19307.2" /> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.0.0-preview6.19304.10" />             <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0-preview6.19304.10" />             <PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.0.0-preview6.19304.6" />         </ItemGroup>     <ItemGroup>         <Reference Include="Microsoft.AspNetCore.Hosting.Abstractions">           <HintPath>[LONGLOCALROUTE]\netcoreapp3.0\Microsoft.AspNetCore.Hosting.Abstractions.dll         </HintPath>         </Reference>        </ItemGroup> 

Thanks in advance.

How can I publish text and video without revealing my identity?

Let’s I want to publish online

  • a fiction book and
  • a series of videos for promoting it.

Let’s further assume that the book challenges some widely held views and it is possible that people will hat me for that. However, no part of the book breaks any law (i. e. there are no threats in that book, nor appeals to violence; I can prove that it was me who wrote the book).

How can I make the book and the videos accessible to a wider audience such that

  • my identity cannot easily be revealed, nor
  • the identities of people who read the book and view the videos?

Note that the protection is meant against co-workers, employers, and neighbors who may not like my views. It is not a protection against the authorities.

Is it normal for a company to ask me for a picture of my ID for proof of identity?

I bought a game off a third party website and they declined my card and said to send a picture of the cardholders ID to prove that the debt card is mine. i don’t feel safe sending a picture of my ID to this website. They charged my card and i didn’t receive my game so i don’t know what to do. the website is

Lorenz curve bellow identity line

I struggling to prove that the Lorenz curve is always bellow the identity line (except in (0,0) and (1,1)) or is equal the identity line on interval $ [0,1]$ .

Be $ x_{(i)}\geq0$ an order statitic such that $ x_{(1)}\leq x_{(2)}\leq \ldots \leq x_{(n)}$ . If $ p_{i}=\frac{i}{n}$ and $ q_{i}=\frac{\sum_{j=1}^{i}{x_{(j)}}}{\sum_{j=1}^{n}{x_{(j)}}}$ , then $ q_{i}\leq p_{i}, \forall i=1,\ldots , n$ .

I’ve been thinking about it for hours and I couldn’t solve it. I’d appreciate any help.

Automorphisms of a First Order Inf. Deformation which pull back to the Identity Morphism

Let $ X$ be a scheme over an algebraically closed field $ k$ and let $ X’$ be a deformation of $ X$ over the dual numbers $ k[\epsilon]/(\epsilon)^2$ . Here we are assuming that $ X$ has non-trivial first order inf. deformations.

I am interested in classifying automorphisms of $ X’$ which pullback to the identity on $ X$ . Let $ U_i$ be an open affine cover of $ X$ so that $ U_i’ \cong X’ \vert_{U_i}$ is an open cover of $ X’$ by trivial first order inf. deformations of $ U_i$ .

Now let $ \phi$ be an automorphism of $ X’$ which pulls back to the identity morphism on $ X$ . Then $ \phi \vert_{U_i’}$ is an automorphism of $ U_i’$ . Since $ U_i’$ is trivial we know that its automorphism group is isomorphic to $ \Gamma(U_i, \mathcal{T}X \vert_{U_i})$ .

Is it possible to glue together these local automorphism (i.e global sections of the associated tangent sheaf) to form a global automorphism?

Based on the description given above, I think that the group of automorphisms of $ X’$ which pullback to the identity on $ X$ is isomorphic to $ \Gamma(X, \mathcal{T}_{X’/k[\epsilon]})$ .

Is this correct?

Building object identity in PHP

I am trying to build object identity in PHP so that when I have a collection of objects, each one can have a string as identifier and all of these identifiers are afterwards combined to form an unique md5 to represent the “identity of a collection”.

Why? So that I can choose to skip re-execution of code when it’s not needed:

interface SomeTestInterface {     public function testFunction(); }  abstract class Identifiable {     public function __toString()     {         $  identity_shards = array_merge( get_object_vars( $  this ), class_implements( $  this ) );          $  identity_string = '';          foreach( $  identity_shards as $  identity_shard_key => $  identity_shard_value ) {             $  identity_string .= (string) $  identity_shard_key . (string) json_encode( $  identity_shard_value );         }          return md5( get_class( $  this ) . $  identity_string );     } }  class SomeBaseClass extends Identifiable implements SomeTestInterface {     public function __construct( $  number )     {         $  this->number = $  number;         $  this->thing = 'a';         $  this->other_thing = ['a','b','c',1,2,3,];     }      public function testFunction()     {         return 'a';     } } 

This is testable with:

for( $  i = 1; $  i < 10000; $  i++ ) {     $  class = new SomeBaseClass( $  i );     (string) $  class; } 

For me, PHP 7.3 and WordPress, this takes ~100ms to execute.

My micro-decisions:

  1. I need json_encode on $ identity_shard_value because you can’t cast an array to string, for example. json_encode is both fast in my experience and knows how to deal with it all.
  2. I chose to make this an abstract class because json_encode doesn’t have access to scoped classes, as such, it cannot encode what it can’t find, so I must be able to access $ this though it’s weird because even in the abstract class, I still can’t encode it, but I should be able to.

My main concerns with this is if I really need all these items to build my object identity or if there’s another, faster way. 10000 objects in 0.1ms, although very good on its own, doesn’t necessarily scale.

In essence, every single object that implements Identifiable in a collection that a module of my framework has will have an identity that I will then combine into a final “collection identity” to later do a check such as:

$  collection_identity = getCollectionIdentity( $  collection ); //MD5 computed from the identity of all these objects  if( $  collection_identity != getCollectionIdentityByName( 'some_collection' ) {     setCollectionIdentity( 'some_collection', $  collection_identity );     //re-execute code } else {  retrieveDataFromStorage(); } 

As you can see, it checks if there was a change to the objects / collection and if so, it re-executes all the other code, but if not, it just retrieves what that “other code” generated in the past and as such, this is a way to use persistent storage to skip execution of heavy code.